Назад | Перейти на главную страницу

Уведомления Rsyslog о нескольких записях журнала

Я пытаюсь использовать ommail для отправки уведомлений по электронной почте. Все работает нормально, но я люблю отправлять несколько строк в mailbody.

module(load="ommail")

template (name="mailBody"  type="string" string="%msg%")
template (name="nodeupdateSubject" type="string" string="Slurm Node 
Update on Cluster")
template (name="nodeerrorSubject" type="string" string="Slurm Node Error on Cluster")

if $programname == 'slurmctld' then {

if $msg contains "update_node" then {
action(type="ommail" server="<server>" port="25"
       mailfrom="<email>"
       mailto="<email>"
       body.enable="on"
       subject.template="nodeupdateSubject"
       action.execonlyonceeveryinterval="60")
}
else if $msg contains "error" then {
       action(type="ommail" server="<server>" port="25"
       mailfrom="<email>"
       mailto="<email>"
       body.enable="on"
       subject.template="nodeerrorSubject"
       action.execonlyonceeveryinterval="60")
   } 
}

Например, мои сообщения rsyslog выглядят следующим образом

slurmctld[28623]: error: Node cs1 Down
slurmctld[28623]: error: Node cs2 Down   

Rsyslog просто отправляет мне первое сообщение, т.е. ошибка: узел cs1 не работает но я тоже хочу следующее сообщение ошибка: узел cs2 не работает

Итак, как мне этого добиться? Я много гуглил, и я не уверен, что правильно.