objectif
Tracer temporellement des logs ou sorties de commandes sans modifier les programmes émetteurs.
code minimal
# préfixer chaque ligne par une date ISO
some_command | ts '%Y-%m-%dT%H:%M:%S'
utilisation
# couleur + horodatage
tail -f /var/log/syslog | ts '%H:%M:%S' | sed -e 's/^/\x1b[36m/' -e 's/$/\x1b[0m/'
# horodatage relatif depuis le début
make 2>&1 | ts -r
variante(s) utile(s)
# écrire dans un log avec timestamps
myjob | ts '%F %T' >> /var/log/myjob.log
notes
tsappartient à moreutils; installez le paquet correspondant.- préférez ISO 8601 pour une interprétation sans ambiguïté.
- pour des performances élevées, évitez des filtres coûteux dans la boucle.