集中式网络日志记录-syslog和替代方案?[关闭]
-
05-07-2019 - |
题
在工作中,我们建立一个分布式应用程序(可能跨越几个机器上的一个局域网,可能后来横跨几个大陆上的广域网+VPN)。我们不想要登录文件的地方对每个机算(填充地盘和不可能查总体)因此,我们需要集中登录在网络。大多数记录不是很重要的,因此UDP是好的,但有些是金钱丢失重要的警报和必须以可靠地交付,这意味着TCP。我们关心的处理方面的网络,如果该记录的协议是太健谈的,或者拖的应用程序的一个爬如果它不响应。
一些可能性我考虑的是:
- syslog (这似乎是完美的,但我的老板有敌意反对这样我不能选择的话)。
- 划 从facebook(但这似乎有点重量级的服务器上的每一个机-不是每一个日志的信息的需求超可靠性)。
- 使用一个消息喜欢的队列 rabbitmq 它可以有多个队调到不同级别的交易的安全。
- 最糟糕的是,我可以写我自己从头开始。
你有其他建议吗?什么样的集中记录的解决方案有你使用,以及他们的工作吗?
编辑: 我倾向划线,因为它的存储和转发设计的分离运行的应用程序从网络延迟。但后在努力安装了,我发现,(1)它不是作为二进制包-现在这是不可饶恕的-和(2)这取决于亲密地在一个图书馆(储蓄),不可作为一个二元的包裹!并且最糟糕的是,它甚至不会编制妥当。这不是释放质量的代码,甚至在开放源。
解决方案
我们已经成功地使用 ZeroMQ 对记录的分发应用程序的情景喜欢你的。这是非常可靠和令人难以置信的速度快。我们搬到ZeroMQ后一个不那么成功的实施与 传播.在我们建立一个单一的ZeroMQ服务器是否能够处理超过70种不同的记录,从中等到高忙分发的应用程序。它接收到的数据的局域网和通过互联网。
如果你需要一个详细的队列中的服务器了对比, 看看这页的第二次生命维基.
希望它能帮助!
其他提示
Syslog是良好的,如果你打算只注重基础设施日志(例如在系统一级).我听说过 猕猴桃的系统日志服务器 是一个很好,虽然不自己试试吧。另一方面,如果你想要记录应用程序相关的东西,syslog是也许不是最好的选择。在情况下使用apache记录服务(log4j log4xxx和其他),然后 logFaces 将是一个很好的解决方案,因为它是建立特别用于汇集多个应用程序在一个地方。工作TCP或UDP connections和有体面日志的观众和数据库的集成。
披露:我是作者的这种产品。
其他例子可能是巨大的,但我已经有好运气 Syslog-NG.这是非常灵活,并可配置的;虽然这是相当容易把它捡起来并做一些有用的东西与迅速。
你也可以考虑使用SNMP警报。
审查所有的备选方案建议在这个线程。看起来东西python供电。派更多的发现岗哨 https://getsentry.com/welcome/ 开放源,记录在案。应该是可靠的,对商业有一个业务根据上面这一点。