首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理分布在多台计算机上的大量日志文件

管理分布在多台计算机上的大量日志文件
EN

Stack Overflow用户
提问于 2010-10-25 13:05:48
回答 5查看 3.4K关注 0票数 5

我们已经开始使用第三方平台(GigaSpaces)来帮助我们进行分布式计算。我们现在试图解决的主要问题之一是如何在这个分布式环境中管理日志文件。我们目前有以下设置。

我们的平台分布在8台机器上。在每台机器上,我们都有12-15个进程,它们使用java.util.logging记录日志文件。在这个平台之上,我们有自己的应用程序,使用log4j和日志来分离文件。我们还将stdout重定向到一个单独的文件,以捕获线程转储和类似文件。

这将导致大约200个不同的日志文件。

到目前为止,我们还没有工具来帮助管理这些文件。在以下情况下,这会引起我们严重的头痛。

  • 当我们事先不知道问题发生在哪个进程时进行故障排除。在本例中,我们目前使用ssh登录到每台机器,并开始使用grep
  • 要积极主动,定期检查日志中是否有异常。在本例中,我们目前还登录到所有机器,并使用lesstail查看不同的日志。
  • 设置警报。我们希望设置超过阈值的事件警报。这看起来是一个痛苦的200个日志文件要检查。

今天,我们每秒只有大约5个日志事件,但是随着我们将越来越多的代码迁移到新的平台上,这种情况将会增加。

我想问社会人士以下几个问题。

  • 在通过不同框架记录的多台机器上分发了许多日志文件,您如何处理类似的情况?
  • 你为什么选择那个特定的解决方案?
  • 你的解决方案是怎么解决的?你发现了什么好的和坏的?

非常感谢。

更新

我们最终评估了Splunk的试用版。我们对它的工作方式非常满意,并决定购买它。易于设置,快速搜索和大量的功能,技术上的倾斜。我可以推荐在类似情况下的任何人来检查它。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-10-25 13:40:31

我建议将所有java日志传输到Java的简单日志外观 ( SLF4J ),然后将所有日志从SLF4J重定向到LogBack。SLF4J特别支持处理所有流行的遗留API (log4j、commons、java.util.logging等),请参阅这里

一旦您在LogBack中拥有了您的日志,您就可以使用它的多个附加程序之一在多台机器上对聚合日志进行添加,有关详细信息,请参阅手动关于追加者的章节。Socket、JMS和SMTP似乎是最明显的候选者。

LogBack还内置了对日志文件和过滤事件()发送到特定附录中特殊情况的监视支持。这样,每次日志中出现错误级别事件时,您都可以设置SMTP附录发送电子邮件。

最后,为了简化troubleshooting,,一定要在所有传入的“请求”中添加某种类型的requestID,有关详细信息,请参阅我对这个问题的答复。

编辑:您还可以实现自己的自定义LogBack ,并将所有日志重定向到文士

票数 3
EN

Stack Overflow用户

发布于 2010-10-25 13:51:07

一个有趣的选择是在这些节点上运行Hadoop群,并编写一个定制的地图缩减作业来搜索和聚合特定于您的应用程序的结果。

票数 2
EN

Stack Overflow用户

发布于 2010-10-25 13:13:32

我建议看一看日志聚合工具,比如扣篮文士

(而且,我认为这更像是一个ServerFault问题,因为它与应用程序和数据的管理有关,而不是关于创建应用程序。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4014794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档