有哪些方法可以将 Tomcat 6 stdout 和 stderr 日志存储到外部服务器?

有哪些方法可以将 Tomcat 6 stdout 和 stderr 日志存储到外部服务器?

由于合规性问题,需要将所有 tomcat 日志存储在中央服务器上至少 6 个月。

有没有办法将日志发送到 rsyslog 服务器或任何其他可以完成任务的机制。我尝试将 CATALINA_OUT 更改为 /var/log/syslog,它确实将其记录在文件中,但 rsyslog-mysql 不会拾取它。

除了将日志发送到远程主机之外,还有哪些方法可以自动移动日志,除了使用 rsync、cron、scp

答案1

这里是关于你的问题的有趣帖子。这是否真的能解决问题还不确定。一种可行的方法是输出到 stdout 并将其通过管道传输logger- 但这不是一个“干净”的解决方案。

答案2

查看 Splunk

http://www.splunk.com

以下是有关如何设置存档策略的一些信息:

http://docs.splunk.com/Documentation/Splunk/4.2.5/Admin/Setaretirementandarchivingpolicy

我不确定您想要满足什么样的合规性,但 Splunk 有一些很棒的插件 - 例如:

美国证券交易委员会 http://www.splunk.com/view/sec-compliance/SP-CAAAGMQ

健康保险隐私及责任法 http://www.splunk.com/view/hipaa-compliance/SP-CAAAGG6

PCI http://www.splunk.com/view/SP-CAAAFHB

答案3

Splunk!?那东西所以昂贵。这是个好东西,但是很贵。

你可能会觉得更有趣的是Logstash, 或者Graylog2

Logstash 几乎可以完全满足您的要求。它有一个可以跟踪日志文件的代理。

我很好奇,如果你将 catalina.out 日志条目指向 FIFO 管道,然后通过管道传输logger(写入 syslog),会发生什么情况?

答案4

看看这个http://spredzy.wordpress.com/2013/03/02/monitor-your-cluster-of-tomcat-applications-with-logstash-and-kibana/

  • 日志存储:http://logstash.net/用于管理事件和日志的开源工具
  • kibana:用于可视化日志和时间戳数据的开源工具

相关内容