elasticsearch ELK(Elasticsearch、Logstash、Kibana)堆栈-我真的需要配置Logstash和Filebeat吗?
我想为我们的定制应用程序部署ELK堆栈。因此,我参考了官方文档中的安装指南,安装了Elasticsearch cluster和Kibana。接下来的问题是:如果我愿意(如果内置模块不适合我),我可以处理来自任何定制应用程序的日志,我应该配置Filebeat,以便它可以获取这些日志作为输入。但是Filebeat的输出应该是什么呢?我听说Elasticsearch应该得到处理,结构化日志(例如,JSON格式)作为输入;但我们的应用程序生成纯文本日志(因为它是Java应用程序,日志可以包括堆栈跟踪和其他混合数据),应该首先对它们进行处理和结构化。。。还是不应该 因此,以下是我关于这种情况的问题:
elasticsearch ELK(Elasticsearch、Logstash、Kibana)堆栈-我真的需要配置Logstash和Filebeat吗?,
elasticsearch,logging,logstash,filebeat,
elasticsearch,Logging,Logstash,Filebeat,我想为我们的定制应用程序部署ELK堆栈。因此,我参考了官方文档中的安装指南,安装了Elasticsearch cluster和Kibana。接下来的问题是:如果我愿意(如果内置模块不适合我),我可以处理来自任何定制应用程序的日志,我应该配置Filebeat,以便它可以获取这些日志作为输入。但是Filebeat的输出应该是什么呢?我听说Elasticsearch应该得到处理,结构化日志(例如,JSON格式)作为输入;但我们的应用程序生成纯文本日志(因为它是Java应用程序,日志可以包括堆栈跟踪和其
Filebeat和Logstash既可以单独工作,也可以协同工作。如果您所要做的就是跟踪日志文件并将其发送到Elasticsearch,而不对其执行任何处理,那么我建议使用Filebeat,因为它比Logstash更轻量级 如果您需要对日志文件执行一些处理和转换,那么根据您选择的解决方案,您有一些选项。您可以利用:
如果您使用上述日志库,那么Filebeat将非常适合您的用例,但这当然取决于您是否需要解析和处理日志中的
消息
字段。我在自定义日志文件上使用了Filebeat处理器,取得了很好的成功。需要做一点工作,但是所有的文档都有,这并不难。总的来说,它从等式中删除了一个变量(Logstash),这大大简化了事情,对于小规模的设置来说,这已经足够了。@Val谢谢你,我刚刚意识到我们应该重新编写我们的应用程序,这样它将为日志聚合系统(如ELK)生成已格式化的日志。太棒了,很高兴它有所帮助!