gpt4 book ai didi

java - Filebeat 与直接从应用程序将日志推送到 Logstash

转载 作者:行者123 更新时间:2023-11-30 01:52:09 28 4
gpt4 key购买 nike

我计划为我们的一个项目构建一个集中式日志系统,该项目有多个用 Java、Python 和 Scala 编写的组件。我想从不同部分(REST 服务器、Spark 作业、Airflow 服务器)收集日志以记录到 Elastic 搜索中并建立索引。我可以看到 Python 中都有直接库& Java日志模块将日志从应用程序直接推送到logstash。我可以看到 filebeat 可以在服务器上配置,将日志从文件推送到logstash。使用 filebeat 比直接将日志发送到 Logstash 有什么优势?最佳实践是什么?

最佳答案

以下是这两种方法的一些优点和缺点:

应用程序日志 => Logstash

优点:

  • 需要管理的组件较少​​,且流程简单

缺点:

  • Logstash 拥堵或中断可能会对您的应用程序产生不利影响
  • 更改日志目标可能需要您重新部署或重新启动应用程序

应用程序日志 => Filebeat => Logstash

优点:

  • Filebeat 是一个轻量级实用程序,可让您将日志处理与应用程序逻辑解耦
  • 更改日志目标非常简单,并且它本身支持多个 Logstash 目标实例之间的负载平衡
  • 可以使用其他字段来丰富日志,或者您可以仅通过更改 filebeat 配置来执行日志的条件处理,例如将客户 A 的日志发送到 Logstash A
  • 日志在本地缓冲,即使logstash进程重新启动或在一定时间内不可用,日志也会可靠地传输到Logstash(前提是您的日志文件保留在磁盘上以供filebeat使用并且具有适当的配置)<

缺点:

  • 应用架构中需要管理的另一个组件
  • 需要额外的系统资源(通常进行非常轻量级的处理)

关于java - Filebeat 与直接从应用程序将日志推送到 Logstash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55694199/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com