elasticsearch Logstash-字段值与度量过滤器的平均值比较,elasticsearch,logstash,metrics,elasticsearch,Logstash,Metrics" /> elasticsearch Logstash-字段值与度量过滤器的平均值比较,elasticsearch,logstash,metrics,elasticsearch,Logstash,Metrics" />

elasticsearch Logstash-字段值与度量过滤器的平均值比较

elasticsearch Logstash-字段值与度量过滤器的平均值比较,elasticsearch,logstash,metrics,elasticsearch,Logstash,Metrics,我试图比较日志中的字段值(requestTime)和过滤器中的平均值 “requestTime”是由以下人员从我的日志中“摸索”出来的:%{INT:requestTime} 过滤段: metrics { timer => [ "requestPage", "%{requestTime}" ] add_tag => "metric" } 输出部分: if "metric" in [tags] { if [requestTime] > "[request

我试图比较日志中的字段值(requestTime)和过滤器中的平均值

“requestTime”
是由以下人员从我的日志中“摸索”出来的:
%{INT:requestTime}

过滤段:

metrics {
    timer => [ "requestPage", "%{requestTime}" ] 
    add_tag => "metric"
}
输出部分:

if "metric" in [tags] {
    if [requestTime] > "[requestPage.mean]" {
        stdout { codec => rubydebug }
    }
}
之后Logstash的输出为空-为什么

如何与
“requestTime”
“requestPage.mean”进行比较

编辑

if "metric" in [tags] {
    if [requestTime] > "[requestPage.mean]" {
        stdout { codec => rubydebug }
    }
}

上述解决方案不起作用


编译成功,无错误,但日志存储输出为空。

您的配置中有一个输入错误:

[requestTime] > [requestPage.mean]"
首先需要删除末尾的双引号,然后将第二个字段重命名为
[requestPage][mean]

因此,您的输出配置应该如下所示:

if "metric" in [tags] {
    if [requestTime] > [requestPage][mean] {
        stdout { codec => rubydebug }
    }
}

查看我的答案,您需要
[requestPage][mean]
,而不是
[requestPage.mean]
我更改了它,但结果也是空的。
if "metric" in [tags] {
    if [requestTime] > [requestPage][mean] {
        stdout { codec => rubydebug }
    }
}