Logstash, если поле содержит значение - PullRequest
0 голосов
/ 27 февраля 2019

Я использую Filebeat для пересылки журналов в Logstash.У меня есть имена файлов, которые содержат «v2», например:

C: \ logs \ Engine \ v2.latest.log

Я бы хотелвыполнить другой грок на эти файлы.Я попробовал оба из следующих действий:

filter{
   if "v2" in [filename] {
          grok {
            .....
            .....
          }

   }
 }

ИЛИ

    filter{
           if [filename] =~ /v2/ {
                  grok {
                    .....
                    .....
                  }

           }
     }

1 Ответ

0 голосов
/ 14 апреля 2019

Что ж, моя проблема заключалась в том, что поле «Имя файла» создавалось ПОСЛЕ фильтра.Так что мой синтаксис был правильным, но он просто ничего не ловил, потому что его не было.Однако, начиная с версии 6.7, они добавили поле «log.file.path», которое является полем «Имя файла», которое я сгенерировал ранее.

...