Logcheck et les regexp
Par Florian le mardi 28 juillet 2009, 18:58:00 - Informatique - Lien permanent
Ou comment écrire de nouvelles règles.
Depuis quelques temps, j'utilise logcheck sur le serveur. Il permet de condenser les informations contenues dans les logs et d'en fournir un résumé détaillé et filtré toutes les heures par mail (par défaut).
Depuis un petit moment, une ligne revenait tout le temps, plusieurs fois par heure, et j'étais donc submergé de mails avec cette ligne qui, si elle annonce un soucis quelque part, ne me renseigne absolument pas sur ce qui se passe exactement. J'ai donc voulu filtrer ces lignes.
Cela se fait très simplement, une fois que l'on a compris le fonctionnement des regexp (ou regex, que je ne connaissais que de nom avant ça).
Il suffit de se rendre dans le dossier /etc/logcheck/ignore.d.CeQueVousAvezChoisiDansLaConfDeLogcheck puis d'éditer (s'il n'existe pas, il faut juste le créer) le fichier correspondant au paquet responsable de la ligne d'avertissement. Dans mon cas, avahi-daemon dont le fichier n'existait pas.
En exemple, voici la ligne que j'avais dans mes rapports de logs :
Jul 27 20:03:03 ordinosaure avahi-daemon[17382]: Invalid query packet.Et voici la regex correspondante :
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ avahi-daemon\[[0-9]+\]: Invalid query packet\.$
Comme on peut le voir, la syntaxe est plus ou moins simple. Je vous conseille la documentation officielle pour un peu plus de renseignements (chapitre WRITING RULES pour notre sujet).