Se você estiver registrando através do syslog, o Metalog tem suporte para executar um comando sempre que uma mensagem correspondente a algum critério for registrada. Caso contrário, você pode usar tailf
para observar novas linhas em um arquivo de log.
sendxmpp é um pequeno script em perl para enviar mensagens XMPP (possivelmente já disponíveis como um pacote para sua distribuição favorita)
Você pode costurar os dois juntos com um shell script sem muita dificuldade. Para o caso do metalog, crie um script como este:
#!/bin/sh
echo $* |sendxmpp [email protected]
E adicione command = /path/to/script.sh
à seção relevante do metalog.conf
Para o caso tailf, você pode tentar algo assim, executado de maneira persistente:
tailf /var/log/file-to-watch.log |(while true; do read M; echo $M | sendxmpp [email protected]; done)
O sendxmpp precisa de uma conta XMPP válida, veja a página do manual para saber como configurar a conta a ser usada.
(pela minha experiência, mensagens de erro entregues pelo XMPP tendem a se tornar muito irritantes se forem muito frequentes ...)