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 "Ivan Habunek (JIRA)" <ji...@apache.org> on 2013/12/01 11:53:37 UTC

[jira] [Closed] (LOG4PHP-166) LoggerAppenderMongoDB should 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:all-tabpanel ]

Ivan Habunek closed LOG4PHP-166.
--------------------------------


> LoggerAppenderMongoDB should 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
>          Components: Code
>    Affects Versions: 2.1.0, 2.2.0
>            Reporter: David Hilowitz
>            Assignee: Ivan Habunek
>            Priority: Minor
>             Fix For: 2.2.1
>
>         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 -- for example, if the server is offline -- it often takes a really 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 was sent by Atlassian JIRA
(v6.1#6144)