我有一堆名为“XXXXXX_XX_yymmdd_hh:mm:ss.txt”的日志文件 - 我需要在添加到 Logstash 的字段中包含文件名中的日期和时间(单独的字段)。
任何人都可以帮忙吗?
谢谢
我有一堆名为“XXXXXX_XX_yymmdd_hh:mm:ss.txt”的日志文件 - 我需要在添加到 Logstash 的字段中包含文件名中的日期和时间(单独的字段)。
任何人都可以帮忙吗?
谢谢
使用grok 过滤器提取日期和时间:
filter {
grok {
match => [
"path",
"^%{GREEDYDATA}/[^/]+_%{INT:date}_%{TIME:time}\.txt$"
]
}
}
根据具体情况而不是 XXXXXX_XX,您可能更喜欢更严格的表达式。此外,GREEDYDATA 效率不高。这可能会产生更好的性能:
filter {
grok {
match => [
"path", "^(?:/[^/]+)+/[^/]+_%{INT:date}_%{TIME:time}\.txt$"
]
}
}