1
0
mirror of https://github.com/Seldaek/monolog.git synced 2025-10-23 01:26:11 +02:00

Merge branch '1.x'

This commit is contained in:
Jordi Boggiano
2017-03-17 23:01:57 +01:00
3 changed files with 48 additions and 5 deletions

View File

@@ -144,6 +144,17 @@ class SlackHandler extends SocketHandler
protected function write(array $record)
{
parent::write($record);
$this->finalizeWrite();
}
/**
* Finalizes the request by reading some bytes and then closing the socket
*
* If we do not read some but close the socket too early, slack sometimes
* drops the request entirely.
*/
protected function finalizeWrite()
{
$res = $this->getResource();
if (is_resource($res)) {
@fread($res, 2048);

View File

@@ -22,6 +22,7 @@ use Monolog\Handler\SyslogUdp\UdpSocket;
class SyslogUdpHandler extends AbstractSyslogHandler
{
protected $socket;
protected $ident;
/**
* @param string $host
@@ -29,11 +30,14 @@ class SyslogUdpHandler extends AbstractSyslogHandler
* @param mixed $facility
* @param int $level The minimum logging level at which this handler will be triggered
* @param Boolean $bubble Whether the messages that are handled can bubble up the stack or not
* @param string $ident Program name or tag for each log message.
*/
public function __construct($host, $port = 514, $facility = LOG_USER, $level = Logger::DEBUG, $bubble = true)
public function __construct($host, $port = 514, $facility = LOG_USER, $level = Logger::DEBUG, $bubble = true, $ident = 'php')
{
parent::__construct($facility, $level, $bubble);
$this->ident = $ident;
$this->socket = new UdpSocket($host, $port ?: 514);
}
@@ -69,7 +73,24 @@ class SyslogUdpHandler extends AbstractSyslogHandler
{
$priority = $severity + $this->facility;
return "<$priority>1 ";
if (!$pid = getmypid()) {
$pid = '-';
}
if (!$hostname = gethostname()) {
$hostname = '-';
}
return "<$priority>1 " .
$this->getDateTime() . " " .
$hostname . " " .
$this->ident . " " .
$pid . " - - ";
}
protected function getDateTime()
{
return date(\DateTime::RFC3339);
}
/**