конфигурация logstash: установите фильтры для разных целей - PullRequest
0 голосов
/ 10 мая 2018

Можно ли настроить один и тот же logstash.conf для разных целей? Например:

  • Журнал приложения
  • стек трассировки ошибок

У меня есть приложение Spring Boot, и я использую плагин logstash-logback-encoder

1 Ответ

0 голосов
/ 10 мая 2018

Да, вы можете, но для каждого индекса нужна какая-то идентификация, например, типа или тега.Я предпочитаю использовать теги, потому что вы можете столкнуться с проблемой, когда ваши данные имеют поле с именем «тип».Посмотрите на приведенный ниже пример файла конфигурации для двух индексов:

input {
  file {
    path => "/log/app_log.log"
    tags => ["app_log"]
  }

  file {
    path => "/log/stacktrace.log"
    type => ["stacktrace"]
  }
}

filter {
  if "app_log" in [tags] {
  #Some fitlering for app_log  
  }
  if "stacktrace" in [tags] {
  #Some fitlering for stacktrace
  }

}

output {
   if "app_log" in [tags] {
      elasticsearch {
         index => "app_log-%{+YYYY.MM.dd}"
         hosts => ["localhost:9200"]
      }
   }
   if "stacktrace" in [tags] {
       elasticsearch {
         index => "stacktrace-%{+YYYY.MM.dd}"
         hosts => ["localhost:9200"]
       }
   }
}

Вы также можете добавить столько входных данных jdbc, сколько захотите.Вам не нужно беспокоиться о времени перерыва между различными входами, потому что logstash запускает каждый вход параллельно.

...