13-01

Lire les logs de QMail...

Si jamais vous tentez de lire les logs QMail, vous aurez quelques difficultés à trouver l'heure dans les logs. Oui, c'est normal, QMail ne fait rien de standard. Les horaires des logs QMail sont en fait encodé en TAI64, un format un peu spécial, mais c'est ce qu'il faut pour ne rien faire comme tout le monde. Pour lire ce format, vous devrez utiliser le binaire tai64nlocal. Celui-ci a un fonctionnement plus que bizarre et ne réponds pas aux commandes habituelles -h ni --help. Rendez vous donc dans votre répertoire de log de QMail que vous souhaitez analyser et faites un cat sur votre fichier. Il vous suffit d'ajouter tail64nlocal à la suite d'un PIPE pour convertir ce format en format humainement lisible.
cat /var/log/qmail/current
@400000004b4da2471ed1afc4 status: local 1/10 remote 0/20
@400000004b4da2471ef10b1c delivery 36973: success: did_0+0+1/
@400000004b4da2471ef17c64 status: local 0/10 remote 0/20
@400000004b4da2471ef1c69c end msg 440187
@400000004b4da2631702bd4c new msg 440187
[...]
Maintenant, avec tai64nlocal
cat /var/log/qmail/current | tail64nlocal
2010-01-13 11:36:45.517058500 status: local 1/10 remote 0/20
2010-01-13 11:36:45.519113500 delivery 36973: success: did_0+0+1/
2010-01-13 11:36:45.519142500 status: local 0/10 remote 0/20
2010-01-13 11:36:45.519161500 end msg 440187
2010-01-13 11:37:13.386055500 new msg 440187
[...]
Voilà, c'est très simple, mais c'est surtout inutile. Une raison de plus de ne pas choisir QMail.

 

 

4 Commentaires pour ce billet.

 

 

  1. bonjour il y a une faute de frappe
    Maintenant, avec tai64nlocal

  2. vous avez ecris tail64nlocal le 'l' est en trop

  3. @mistery: Merci pour le signalement :

    file /usr/local/bin/tai64nlocal
    /usr/local/bin/tai64nlocal: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.1, dynamically linked (uses shared libs), stripped

  4. Bonjour,
    Merci, c'est exactement ce que je cherchais ;)
    Bonne journée

 

Votre commentaire