【问题标题】:Logstash monitoring toolsLogstash 监控工具
【发布时间】:2015-01-28 07:18:54
【问题描述】:

我们设置了logstash和elasticsearch的环境进行日志分析。我的硬件环境是高端的,尽管logstash的性能很慢。现在我们的目标是找到以下需要花费大量时间输入、过滤或输出。所以我们决定去监控它。到目前为止,我们有一个选择是进行 Java 线程转储分析。这是唯一的方法还是任何其他可用的选项。

配置文件详细信息

input {
   file {
      path => ["home/**/*.log"]
      start_position => beginning
  }

}

filter {}

output {
    stdout { codec => rubydebug }
    elasticsearch {}
}

【问题讨论】:

    标签: performance elasticsearch logstash logstash-grok logstash-forwarder


    【解决方案1】:

    就个人而言,也许不是最好的方法,我在删除输出部分并使用generator plugin 后在本地运行它来测试我的配置。其他输入(文件、tcp、任何可以使用精确数据的东西)也是可能的。

    然后我根据需要修改配置并运行以下命令查看差异:time java -jar logstash.jar agent -f conffile

    根据经验,if 语句和详细解析占用了大量资源,我可以通过优化它们来节省一些资源(在您的情况下我看不到太多资源)。我个人首先会尝试在有和没有 ruby​​ 块的情况下运行它,看看这是否会占用大量资源(不熟悉 ruby​​ 部分是如何产生的)。

    您还可以检查以并行运行作业(尤其是使用多个内核),默认情况下,logstash 仅使用一个工作人员(或曾经这样做)。请注意,在某些情况下,多个工作人员可能会产生意想不到的副作用(例如,运行统计信息等,请不要在此处看到)。

    【讨论】:

    • 我们会尽快回复您
    • 你知道在logstash中计算每秒没有事件的最简单方法是什么吗?
    • 指标。但是过去有一个错误,如果您使用多个线程,它会失败。否则,您可以在 ES 中查看有多少事件进入。对于我的情况,测试“time java ...”就足够了(并连续运行几次,因为其他系统任务会减慢测试运行的速度)。
    • 谢谢我试着让你知道
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多