Если установить дополнительный плагин для logstash, то можно автоматически отправлять из него email по определенным событиям. Отправка осуществляется на третий стадии прохождения информации через logstash — output.
Установим plugin для logstash:
# /usr/share/logstash/bin/logstash-plugin install logstash-output-email
После установки отредактируем logstash.conf. Например я на стадии filter дописываю в tag события фразу Send-Email, а на стадии output, смотрю если есть такой tag, то отправляю сообщение:
[codesyntax lang="php"]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
. . . filter { if [event_id] == 111 or [event_id] == 222 { mutate { add_tag => [ "Send-Email" ] } } } . . . output { if "Send-Email" in [tags] { email { port => 25 address => "smtp.corp.ru" username => "user@corp.ru" password => "password" authentication => "login" use_tls => true from => "user@corp.ru" subject => "Alert from %{host}" to => "user1@corp.ru" via => "smtp" body => "%{@timestamp} \n%{message}" } } } |
[/codesyntax]
После перезапускаем logstash:
# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/config.conf --config.test_and_exit
# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/config.conf --config.reload.automatic
# systemctl restart logstash