Comments (5)
Could you try adding this in the original PushoverHandler and see if it fixes it?
public function write(array $record)
{
parent::write($record);
$this->closeSocket();
}
This would close the socket after every call instead of keeping it open.
Another thing to try would be to add $this->setPersistent(true);
to the constructor of the PushoverHandler, that way maybe it would just reuse the same socket for the two handlers, but I'm not sure.
On a sidenote, doesn't the pushover api allow sending a message to more than one person at once? That would be a better option :)
from monolog.
I'll try those two suggestions tomorrow and let you know if they work out.
As for the pushover api itself, it only works for one user per push. I'll
see if I can submit a ticket to them to enable multiple users on a push, I
agree that would be a better option!
On 14 January 2013 18:24, Jordi Boggiano [email protected] wrote:
Could you try adding this in the original PushoverHandler and see if it
fixes it?public function write(array $record) { parent::write($record); $this->closeSocket(); }
This would close the socket after every call instead of keeping it open.
Another thing to try would be to add $this->setPersistent(true); to the
constructor of the PushoverHandler, that way maybe it would just reuse the
same socket for the two handlers, but I'm not sure.On a sidenote, doesn't the pushover api allow sending a message to more
than one person at once? That would be a better option :)—
Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-12229116.
from monolog.
Using the setPersistent() method doesn't work, as only the first message is received.
Not sure why, but probably to do with the SSL/ HTTPS connection (even though pushover.net does send a Connection: keep-alive
header).
Calling closeSocket() works, but only for the pushover.net application's owner because the PushOver API only allows messages to other users than the application's owner when connecting over SSL.
So, the fix for PushoverHandler.php:37 is:
parent::__construct('ssl://api.pushover.net:443', $level, $bubble);
instead of:
parent::__construct('api.pushover.net:80', $level, $bubble);
So the solution to our specific problem is to close the socket on every push while connecting over SSL.
Be aware that setPersistent() and SSL might be mutually exclusive...
from monolog.
OK thanks for trying. I think using ssl + closeSocket() is a better approach than curl because curl isn't always available (neither is openssl, but I think it's more common). If you would like to submit a pull request with this approach it'd be great.
If you get any news from their side about multi-user-push please update this issue.
from monolog.
Closing this, see #148
from monolog.
Related Issues (20)
- Monolog\Level (enum) against Constants HOT 6
- Uncaught Error: Class "Monolog\Logger" not found HOT 3
- Fatal error: method_exists(): The script tried to execute a method or access a property of an incomplete object. HOT 2
- Is it possible to indent the stacktrace?
- How should we catch exceptions with the SlackWebhookHandler cURL requests? HOT 2
- LogglyHandler - incorrect records comparison. HOT 2
- PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 102863464 bytes) *** monolog/src/Monolog/Formatter/HtmlFormatter.php on line 64 HOT 1
- OpenObserve Handler HOT 1
- Brevo mail api handler HOT 2
- Site Lacks a Favicon!!
- Rotating logs based on cron syntax HOT 3
- PHPDoc out of sync on StreamHandler HOT 1
- Is it possibile to log to the stream that is completely outside of the application environment? HOT 5
- Issue with Logging to stdout in Laravel 10.21 using Monolog v3 EXCEPTION#Cannot log request: fwrite(): Write of 378 bytes failed with errno=32 Broken pipe HOT 32
- The file does not close after writing HOT 5
- How do I use includeStacktraces? HOT 1
- Support more flexible normalizer HOT 2
- cannot access private method HOT 7
- Add support for Elasticsearch with Bulk API and data stream HOT 1
- Could a new release be considered to remove the 0.7MB logo from the package ? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from monolog.