我最近使用 Monolog 集成了我们的 PHP Web 应用程序,并添加了对登录 Graylog 的支持。直到最近,我一直在使用Graylog VM,并成功记录了发送给它的所有信息。
我们现在已经启动了一个成熟的专用 Graylog 服务器:该服务器当前正在通过 UDP 记录 syslog 信息,并且它再次完美运行。
然而,由于各种原因,我们选择为我正在开发的应用程序使用 HTTP 输入,因此我在 Graylog 中创建了一个 HTTP 本地输入(为了记录,我也尝试了一个全局输入)。但是,找不到该应用程序的日志。应用程序中没有引发异常,例如在连接错误的情况下会发生这种情况,而且我使用的配置与我的 VM 完全相同,所以我相当确定问题不在应用程序端。
更奇怪的是,Graylog确实收到了该输入的流量!
您可以在右侧以浅灰色看到输入有流量,但已处理 0 个字节 - 或者,我不太确定这意味着什么。
那么:这是什么意思?我该如何调试和解决这个问题?
编辑:我不确定我的客户端代码是否正确......今天我尝试通过以下方式手动向服务器发送消息curl
:
curl -XPOST http://A.B.C.D:1200/gelf -p0 -d '{"short_message":"YO DUDEZ!", "host":"host-pc", "facility":"testHTTP", "_foo":"bar"}'
并且该消息已正确记录。