Open boesing opened 1 year ago
If you're using Monolog 3, you can call $logger->close() as well as $logger->reset() in between "jobs" or whatever you have as a good point to do this where it makes sense, that would then be reopened whenever something needs to be written again.
I do not have a strong need in closing all handlers. Some do not need to be closed as they do not keep ports open, that seems only being the case for the udp socket here 🤔
I have no handler doing http requests but I dont think that curl keeps TCP ports open which were used to send HTTP requests?
You can also close the UDP handler directly of course, if that's more appropriate, but IMO closing/resetting everything between jobs in long running worker processes is a good approach.
Hey there,
we do have some longrunning processes using
pcntl_fork
which do log stuff viaSyslogUdpHandler
to our syslog. Due to the fact that it is a longrunning process, the UDP socket is never closed and therefore stays open until the process is restarted. I wonder if it would make sense to have an option available in theSyslogUdpHandler
which allows projects to configure somesocketAutoClose
option so that the socket is being closed after message is being sent.I am open for other suggestions as well (i.e. some
CloseAfterProcessHandler
which decorates another processor). Thanks for your time.Max