我正在使用logstash
不断查找新文件并将数据流式传输到其他系统。
现在我正在使用此配置:
input {
file {
type => "source"
path => "/ebs/**/*-*csv" # recursivly check subfolders
sincedb_path => "/usr/local/logstash/sincedb"
sincedb_write_interval => 1
discover_interval => 4
start_position => "beginning"
stat_interval => 1
}
}
它工作正常,但我想做的是这样的:
path => "/ebs/**/*-[0-9]{10}.csv"
是否可以在路径中包含这样的正则表达式?
答案 0 :(得分:2)
答案 1 :(得分:2)
Logstash File输入api仅支持glob(Wildcard),因为Unix shell支持。例如,如果使用glob模式在Unix系统中列出文件,
$ ls [0-9] .csv
它可以显示文件“1.csv”
但是当你添加正则表达式时,
$ ls [0-9] {1} .csv
系统显示
ls:[0-9] {1} .csv:没有这样的文件或目录
所以,如果你想添加正则表达式,可能需要匹配globbing pattern。 如
path => “/ EBS / * / * - [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0 -9] [0-9] .csv“
希望这可以帮到你。