Você pode alterar o arquivo de log para ver somente as adições mais recentes a um script que envia e-mails quando novos correspondam aos critérios
Possível código a ser usado.
- Esse código usa o mutt para enviar o email.
- defina seu arquivo de log para assistir na variável: logfile
- defina seu endereço de e-mail na variável: emailaddress
- Existe um laço permanente para o código permanente.
-
A cauda -f segue à medida que as linhas são adicionadas ao arquivo e o -c 0 diz para procurar apenas os últimos 0 bytes quando ele é reiniciado, para que ele não leia as últimas 10 linhas e envie um extra alertas antigos.
#!/bin/sh words_to_match="Connection established" logfile=~/test.log emailaddress="[email protected]" tail -f -c 0 ${logfile} | (while true ; do read -r line_to_check echo ${line_to_check} | grep -q ${words_to_match} if [ "$?" = "0" ] ; then echo "${line_to_check}" | mutt -s "VPN Login" ${emailaddress} fi done )