Graylog2 与 Symfony 2 (Monolog)

Posted

技术标签:

【中文标题】Graylog2 与 Symfony 2 (Monolog)【英文标题】:Graylog2 with Symfony 2 (Monolog) 【发布时间】:2014-11-04 01:41:15 【问题描述】:

我想在 SF2 项目中使用“Monolog -> GelfHandler”。所以我在 composer.json 中添加了以下内容:

"graylog2/gelf-php": "dev-master"

我的 SF2 config.yml:

monolog:
    handlers:
        main:
            type: gelf
            publisher:
                hostname: %Graylog2.Host%
                port: %Graylog2.Port%
            level: info
            formatter: monolog.formatter.session_request

但是现在,如果我想记录一些东西,我会在 GelfHandler::write() 中得到一个错误

Gelf\Publisher::publish() must be an instance of Gelf\MessageInterface, string given

这里有什么问题?

【问题讨论】:

你具体的 symfony 版本是什么?或者更好的是,您可以粘贴从composer show --installed 获得的输出吗? 【参考方案1】:

好的,我会自己回答我的问题。失败是更改“格式化程序”或者您必须使用格式化程序是 Monolog\Formatter\GelfMessageFormatter 的子类。

谢谢@全部

【讨论】:

嗨,太好了!也许您还可以添加最终配置,一切就绪?谢谢!

以上是关于Graylog2 与 Symfony 2 (Monolog)的主要内容,如果未能解决你的问题,请参考以下文章

通过 nxlog 将 .log 文件转发到 Graylog2 VM 服务器

按状态码过滤 NXlog+GrayLog2 中的 IIS 日志

Graylog2进阶 通过正则解析Nginx日志

Graylog2实现Docker容器日志收集

sh RHEL / CentOS 6的graylog2安装脚本

[日志分析]Graylog2采集Nginx日志 主动方式