我有一个 N 层系统供我们的客户访问数据,我们发现我们当前的日志系统(内置于服务器应用程序中)不足以存储我们需要的所有数据。现在,我需要找到一种保存和存储日志的新解决方案,并且正在研究我能找到的两种不同选项:使用远程系统日志设置和滚动我自己的系统。远程系统日志系统的问题在于 1024 个字符的限制,而滚动我自己的系统由于稳定性问题并不可取。理想情况下,我希望有一个系统,我可以从服务器触发日志条目并忘记它。有人知道我还有其他可用的选项吗?
答案1
通过 TCP 的 syslog-ng 运行得很好,但正如您所说,它或多或少仅限于单行日志。
您可能会考虑 Splunk,它价格昂贵,但每台服务器上都有日志转发代理,可以处理几乎任何格式。GUI 非常棒,并且具有一些非常强大的搜索和报告工具。
答案2
编辑 - 我在谷歌上搜索失败。RFC 确实指定了 1024 字节的最大消息大小。
在我看来,Syslog 是久经考验的。你指的是什么?谷歌搜索后,我没有在 syslog 中看到任何此类限制。
远程系统日志系统的问题在于 1024 个字符的限制
答案3
Splunk 看起来不错,但与自制产品相比,我们无法证明其价格合理,因此我不得不使用 UDP 连接构建一个基本的日志服务器。幸运的是,64k 的大小限制使我能够仅使用一个 UDP 数据报发送 99% 以上的日志消息。