Tomcat 如何使用logstash转发器实现容错?

Tomcat 如何使用logstash转发器实现容错?,tomcat,logstash,logstash-forwarder,logstash-configuration,logstash-file,Tomcat,Logstash,Logstash Forwarder,Logstash Configuration,Logstash File,我使用Logstash转发器来处理tomcat日志 我的日志存储转发器配置文件包含: "files": [ { "paths": [ "/usr/share/tomcat/impression_logs/impressions.log" ] }] 我使用的是日志轮换,所以它会在一段时间后或当文件大小超过1MB时将日志文件归档到不同的文件夹 若logstash forwarder停机几分钟,则会对日志进行归档,而不会处理这些日志 我使用monit来监控logstash转发器,但仍然有可能

我使用Logstash转发器来处理tomcat日志

我的日志存储转发器配置文件包含:

 "files": [
{
  "paths": [ "/usr/share/tomcat/impression_logs/impressions.log" ]
}]
我使用的是日志轮换,所以它会在一段时间后或当文件大小超过1MB时将日志文件归档到不同的文件夹

若logstash forwarder停机几分钟,则会对日志进行归档,而不会处理这些日志

我使用monit来监控logstash转发器,但仍然有可能 丢失日志


有没有办法通过logstash forwarder实现容错?

我使用logstash forwarder从每个服务器4-5个Tomcat发送所有日志,它工作正常,没有日志丢失。也许你只需要设置死区时间,而不是24小时,对我来说是10分钟。原因如果转发器会掉落,然后会在超过两个小时后启动,那么当它开始发送24小时的所有日志时,您可以获得高负载。

日志文件是如何旋转的?是否将其复制到新文件,然后对原始文件进行截断?或者原始文件已重命名?我们使用log4j来旋转日志文件。如果此文件的大小超过1MB,它将被重命名并替换为新的impressions.log文件