如何测量 filebeat 已消耗和 logstash 已处理的日志事件数
how to measure number of log events filebeat has consumed and logstash has processed
我有一个 ELK 堆栈如下:
FileBeat --> Redis --> Logstash --> ES --> Kibana。
我在 Logstash 中使用 metrics 插件,但我无法理解它。
如何测量在给定时间点从日志中读取并通过 filebeat 发送到 redis 的事件数以及 logstash 处理的事件数?
input
generator {
type => "generated"
}
filter
metrics {
meter => "events"
add_tag => "metric"
}
output
if "metric" in [tags] {
stdout {
codec => line {
format => "rate: %{[events][rate_5m]}"
}
}
}
我可以看到输出为
rate: some number
doc 解释了您看到的数字。
"[thing][rate_5m]" - the per-second event rate in a 5-minute sliding window
所以您看到的数字是过去 5 分钟内每秒发生的事件数。
但解决方案与您的解决方案相去不远:您必须使用 [events][count]
,就像 [events][rate_5m]
一样。这将为您提供过去 5 分钟的事件数(可以使用 flush_interval
设置进行更改)
我有一个 ELK 堆栈如下:
FileBeat --> Redis --> Logstash --> ES --> Kibana。
我在 Logstash 中使用 metrics 插件,但我无法理解它。
如何测量在给定时间点从日志中读取并通过 filebeat 发送到 redis 的事件数以及 logstash 处理的事件数?
input
generator {
type => "generated"
}
filter
metrics {
meter => "events"
add_tag => "metric"
}
output
if "metric" in [tags] {
stdout {
codec => line {
format => "rate: %{[events][rate_5m]}"
}
}
}
我可以看到输出为
rate: some number
doc 解释了您看到的数字。
"[thing][rate_5m]" - the per-second event rate in a 5-minute sliding window
所以您看到的数字是过去 5 分钟内每秒发生的事件数。
但解决方案与您的解决方案相去不远:您必须使用 [events][count]
,就像 [events][rate_5m]
一样。这将为您提供过去 5 分钟的事件数(可以使用 flush_interval
设置进行更改)