logstash丢弃没有精准匹配到文件名的日志数据
一种场景,如果确定需要精准采集这一文件 f:\x\data\2022-05-27-231259\my.txt 里面的数据,不是这样形式的 data\yyyy-mm-dd-hhmmss\my.txt 文件,一律不采集日志数据。
filter {
grok {
match => {
"[log][file][path]" => "/data/%{YEAR}-%{MONTHNUM}-%{MONTHDAY}-%{HOUR}%{MINUTE}%{SECOND}/my.txt"
}
tag_on_failure => [ "tag_failure" ]
}
if "tag_failure" in [tags]{
drop{
#丢弃
}
}
}
首先需要按照log.file.path的文件全路径匹配,匹配失败,增加一个 tag_failure标签,在if逻辑判断中如果检测到这个tag标签,就drop,这个drop将丢弃到采集的这行日志。