PDA

Voir la version complète : Surveiller un fichier de log



sebtelecom
09/03/2011, 18h18
Bonjour,

Je cherche une application pour Centos 5.5 qui permet de surveiller un fichier de log et de réaliser une action si il voit passer un mot-clé/phrase-clé entré sous regex.

J'ai trouvé quelques pistes sans résultats (LogWatch, logcheck, swatch)

On m'a aussi proposé de créer un script en partant de cette commande : "tail -f /var/log/asterisk/messages | egrep [WARNING].*:.*Received.*response:.*Forbidden.*from.*" mais j'aurai préféré une application que créer mon propre script.

Je suis étonné de ne rien trouvé sur le net car cela me semble assez basique.

En gros ce que je cherche à faire :

Si message "WARNING ......" dans les logs
Faire : asterisk -rx 'sip reload'

J'ai essayé d'adapter fail2ban mais c'est super galère..

D'avance merci !

Jacknight
09/03/2011, 19h17
Eventuellement utiliser logrotate (/etc/logrotate.d/asterisk) avec les paramètres postrotate/endscript pour exécuter ta commande à chaque rotation du log.

Après évidement faudra une rotation à fréquence élevée.

Y a des explications ici sur l'usage de la gestion du log : http://www.voip-info.org/wiki/view/logrotate

Si tu désire une réaction immédiate à un Warning, ma proposition est inappropriée.

jean
10/03/2011, 02h34
utilise inotify (package gamin) pour surveiller les changements au fichiers, sans pooler comme un malade

sebtelecom
10/03/2011, 10h29
Si tu désire une réaction immédiate à un Warning, ma proposition est inappropriée.

C'est en effet le but de ma recherche, à partir du moment où la liaison entre mon serveur et ma passerelle est coupée, tant qu'il n'y a pas un sip reload exécuté, mon client ne pourra plus passer d'appels.