2014-11-24 4 views
0

Я не получаю никаких писем от logstash для нижеприведенной конфигурации. Может кто-нибудь, пожалуйста, помогите мне, что происходит не так, также, пожалуйста, дайте мне знать, где я могу отслеживать журналы электронной почты. Нет никакой ошибки при запуске файла конфигурации.Logstash: никаких сообщений электронной почты, полученных от logstash для плагина выхода электронной почты

Выходная часть конфигурационного файла, как показано ниже:

output { 
    elasticsearch { 
      embedded => true 
       } 

if ("INFO" in [message]) { 
    email { 
      subject => "logstash alert" 
      to => "[email protected]" 
      via => "sendmail" 
      body => "Here is the event line that occured: %{message}" 
     } 
} 

Заранее спасибо за вашу помощь.

+0

Пожалуйста, покажите сообщение, с которым вы тестируете. Чтобы изолировать движущиеся части, оберните условное окружение регулярным выводом 'stdout {}' и в настоящее время игнорируйте вывод электронной почты. –

+0

Я получаю выход через ES и kibana. Но не удалось получить электронные письма для них. Пожалуйста, найдите ниже фильтра, примененного для файла конфигурации: фильтр { \t \t если ("INFO" в [сообщение]) { \t \t \t \t мутировать { \t \t \t \t add_field => [ "уровень", "INFO" ] \t \t \t \t \t} \t \t \t} –

+0

Конечно, но я предлагаю вам игнорировать вывод по электронной почте сейчас и убедитесь, что вы получаете сообщения, отправленные на выход стандартного вывода первым. Если это работает, это свидетельствует о том, что проблема связана с выходом электронной почты. Если это не сработает, все пойдет не так, как раньше. –

ответ

1

Оператор in проверяет массив, содержащий значение. В вашем случае это не сработает, потому что похоже, что вы ожидаете, что строка необработанного журнала будет соответствовать. Вы хотите:

if [message] =~ /INFO/ { 
} 
+0

Отсутствие писем даже после смены условных обозначений. –

Смежные вопросы