You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4php-dev@logging.apache.org by "David Hilowitz (Issue Comment Edited) (JIRA)" <ji...@apache.org> on 2011/12/21 23:57:30 UTC

[jira] [Issue Comment Edited] (LOG4PHP-166) It would be great if LoggerAppenderMongoDB could supply a timeout value to the Mongo() constructor when it connects for the first time.

    [ https://issues.apache.org/jira/browse/LOG4PHP-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13174467#comment-13174467 ] 

David Hilowitz edited comment on LOG4PHP-166 at 12/21/11 10:57 PM:
-------------------------------------------------------------------

This is the patch I threw together to fix this issue. This patch changes src/main/php/appenders/LoggerAppenderMongoDB.php only.
                
      was (Author: dhilowitz):
    This is the patch I threw together to fix this issue.
                  
> It would be great if LoggerAppenderMongoDB could supply a timeout value to the Mongo() constructor when it connects for the first time.
> ---------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: LOG4PHP-166
>                 URL: https://issues.apache.org/jira/browse/LOG4PHP-166
>             Project: Log4php
>          Issue Type: Improvement
>    Affects Versions: 2.1, 2.2
>            Reporter: David Hilowitz
>            Priority: Minor
>             Fix For: 2.3
>
>         Attachments: patch_commit_59b06e94668f.patch
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> It would be great if LoggerAppenderMongoDB could supply a timeout value to the Mongo() constructor when it connects for the first time. 
> Here's why:  If something is wrong with the Mongo database server, the server is offline or whatever, it often takes a long time (10 or more seconds) to fail and throw an exception. This is terrible in a situation where we need a quick turnaround time and are using the logger to collect diagnostic data. 
> Ideally, a timeout value could be specified in the log4php config XML file along with the host, name, etc. 
> I already have a patch that fixes this issue. The main gist of it is this. Change this:
> $this->connection = new Mongo(sprintf('%s:%d', $this->host, $this->port));
> to this:
> $this->connection = new Mongo(sprintf('%s:%d', $this->host, $this->port), array("timeout" => $this->timeout));
> Useful Resources:
> * PHP Docs that explain the Mongo() constructor timeout value: http://php.net/manual/en/mongo.construct.php

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira