![](/img/trans.png)
[英]Milliseconds in \Monolog\Formatter\LineFormatter (PHP)
[英]monolog multiple formatter php
我正在使用monolog并尝试使用2格式化程序。
1.使用常规格式化程序的文件2.使用带有logstash格式化程序的gelf处理程序
码:
$logger = new Monolog\Logger("my-app");
$strHandle = new Monolog\Handler\RotatingFileHandler($settings['path'],$settings['max_files'], $settings['level']);
$formatter = new LogstashFormatter("name");
$strHandle->setFormatter($formatter);
$logger->pushProcessor(new Monolog\Processor\UidProcessor());
$handler = new \Monolog\Handler\GelfHandler(new \Gelf\Publisher(new \Gelf\Transport\TcpTransport("localhost", "1221")));
$logger->pushHandler($handler);
$logger->pushHandler($strHandle);
$logger->info("test");
那是可行的,但是logstash的格式也在文件中,我想要这样的东西:
$ gelfHandler-> setFormatter($格式化器);
我尝试了这个但是出现了500个错误
$logger = new Monolog\Logger("my-app");
$strHandle = new Monolog\Handler\RotatingFileHandler($settings['path'],$settings['max_files'], $settings['level']);
$logger->pushProcessor(new Monolog\Processor\UidProcessor());
$handler = new \Monolog\Handler\GelfHandler(new \Gelf\Publisher(new \Gelf\Transport\TcpTransport("localhost", "1221")));
$formatter = new LogstashFormatter("name");
$handler->setFormatter($formatter);
$logger->pushHandler($handler);
$logger->pushHandler($strHandle);
$logger->info("test");
我认为您只能将GelfMessageFormatter
与GelfHandler
GelfMessageFormatter
使用。 https://github.com/Seldaek/monolog/blob/master/doc/02-handlers-formatters-processors.md#formatters
您有确切的错误吗? 您是否尝试过没有LogstashFormatter
的LogstashFormatter?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.