Я использую filebeat для отправки журналов в logstash в зависимости от их имени файла - эти журналы отправляются в определенные индексы в elasticsearch. Filebeat работает хорошо, logstash получает файлы журнала, но я не могу получить регулярное выражение в моей конфигурации logstash, чтобы проверить, содержат ли имена файлов определенную рабочую строку.
Вот как выглядит моя конфигурация logstash
input {
beats {
port => 5044
}
}
filter {
csv {
separator => ","
columns => ["Order ID","Status","Remarks"]
}
}
output {
if [source] =~ "/path/to/my/logs/log-file-1*.csv" {
stdout {}
}
else if [source] =~ "/path/to/my/logs/log-file-2*.csv" {
stdout {}
}
else if [source] =~ "/path/to/my/logs/log-file-3*.csv" {
stdout {}
}
else if [source] =~ "/path/to/my/logs/log-file-4*.csv" {
stdout {}
}
}
Я удалил часть, которая отправляет в elasticsearch. Я ожидаю, что вывод данных будет напечатан на стандартный вывод, но его нет.
Правильно ли я ссылаюсь на [источник]?