elasticsearch 如何使用logstash管道检查EKL中是否存在特定索引?,elasticsearch,logstash,logstash-configuration,elasticsearch,Logstash,Logstash Configuration" /> elasticsearch 如何使用logstash管道检查EKL中是否存在特定索引?,elasticsearch,logstash,logstash-configuration,elasticsearch,Logstash,Logstash Configuration" />

elasticsearch 如何使用logstash管道检查EKL中是否存在特定索引?

elasticsearch 如何使用logstash管道检查EKL中是否存在特定索引?,elasticsearch,logstash,logstash-configuration,elasticsearch,Logstash,Logstash Configuration,我想编写一个日志存储管道来检查ES env中是否存在特定的索引;如果是,则将传入事件标记为“有效”,否则标记为“无效” 要使用cURL检查索引有效性,请执行以下操作: curl -u elastic:elastic -I http://localhost:9200/sampletest1 有效输出-HTTP/1.1200正常 无效输出-HTTP/1.1400未找到 我的日志存储脚本: input { beats { port => "5044"

我想编写一个日志存储管道来检查ES env中是否存在特定的索引;如果是,则将传入事件标记为“有效”,否则标记为“无效”

要使用cURL检查索引有效性,请执行以下操作:

curl -u elastic:elastic -I http://localhost:9200/sampletest1
有效输出-
HTTP/1.1200正常
无效输出-
HTTP/1.1400未找到

我的日志存储脚本:

input {
    beats {
        port => "5044"
    }
}
filter {
    #execute curl to check for index http://localhost:9200/%{process-code}
    #if response has 200 then mutate with add_tags "valid". else add tag "invalid"
    if "valid" in [tags] {
        
    } else {
        #delete event; prevent it from going to output section
    }
}
output {
    #print only valid events
    stdout {
        codec => rubydebug
    }
}

我被困在过滤器部分提到的2行。我们不能在过滤器部分使用
exec
插件

你可以使用http过滤器来调用elasticsearch。嗨@Badger,你能解释一下如何使用http过滤器插件的响应吗?我可以使用http插件调用“{process code}”,但不知道如何检查接收到的内容,然后进一步处理。