我已经安装了graylog服务器及其依赖项。想要使用Monolog将我的php应用程序中的日志发送到graylog服务器。 但是我不知道如何使用Gelf处理程序。我已经看到项目Monolog中存在的GelfHandlerTest.php但是我无法设置我的发布者并创建处理程序。可以请任何人用示例代码解释我如何使用它。
尝试将我的localhost apache中的日志发送到在安装了graylog的同一专用网络中设置的服务器。
在PHP中执行的testLogging文件是
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\GelfHandler;
use Gelf\Message;
use Monolog\Formatter\GelfMessageFormatter;
$handler = new GelfHandler($publisher);
如何在monolog中设置发布者?
感谢任何形式的帮助。谢谢
答案 0 :(得分:1)
请检查以下链接:
https://laracasts.com/discuss/channels/general-discussion/l5-logging-to-graylog2
Graylog2 with Symfony 2 (Monolog)
基本上你需要这样的东西:
$handler = new GelfHandler(new Gelf\Publisher(
new Gelf\Transport\TcpTransport(HOST,PORT)
));
传输必须是您在grayog平台中添加的输入.Ex:
new TcpTransport(127.0.0.1,12201)
可用的运输: https://github.com/bzikarsky/gelf-php/tree/master/src/Gelf/Transport
希望它有所帮助。