首页 文章

什么是更好的:appserver或远程kibana服务器上的logStash代理?

提问于
浏览
0

我有12个log(log4j)文件,我想在Logstash / Kibana中编入索引 .

是否最好将每个log4j.xml文件更改为附加到本地主机上的单个logstash代理(1对1映射),然后将其推送到运行Kibana的远程主机上的ElasticSearch?

因此,应用服务器上有12个logstash代理 .

要么

是否最好将每个log4j.xml文件更改为附加到远程主机上的匹配logstash代理(1对1映射),该文件将推送到ElasticSearch(与Kibana在同一主机上运行)?

那么在运行ElasticSearch和Kibana的删除服务器上有12个logstash代理?

如果我选择选项2,那么我需要在Kibana服务器上定义要打开的12个端口 .

如果我选择选项1,那么我只需要一个端口开口,即9200(弹性搜索端口) .

我应该采取什么建议的方法?我是否错过了使用Logstash的技巧?

注意:它来自一个QA服务器的12个日志文件,如果我包含其他3个QA服务器,那么我将需要为每个服务器打开12个端口 . 不是我渴望做的事情 .

我正在使用log4j appender,因为服务器是Windows,我还没有让logstash代理直接读取应用程序日志(文件锁定问题) .

  • Logstash:1.5.0

  • 弹性搜索:1.6.0

  • Kibana:4.1.0-windows

1 回答

  • 0

    Logstash可以只使用一个实例读取多个文件或从多个源接收,因此您不需要设置12个logstashes或执行任何复杂的操作 .

    您的问题的主要问题是:当logstash或elasticsearch关闭时会发生什么? log4j会对消息进行排队,直到服务再次恢复为止?如果没有,你将失去信息 .

    虽然这是旧学校,但这是我喜欢写本地日志文件的一个原因 . 当logstash关闭时,它们充当免费的分布式缓存 . 您也可以设置代理(redis,rabbitmq),但那是另一个支持的服务 .

相关问题