web-dev-qa-db-fra.com

Comment inclure la milliseconde dans syslog?

J'ai configuré le fichier rsyslog.conf dans /etc pour inclure mes propres journaux sous le nom syslogs dans un fichier à /var/logs.

Mais après avoir ouvert le fichier, j'ai eu ceci:

Jun 5 10:09:09 lab-Altos-G330-Mk2 slog[19689]: Hello1
Jun 5 10:09:09 lab-Altos-G330-Mk2 slog[19689]: Hello2

Ici, le timestamp a seulement une seconde résolution. Je veux savoir comment configurer rsyslog pour afficher également les millisecondes?

5
RaulGupta

Par défaut, rsyslog utilise l’horodatage traditionnel, qui dans le format de la date serait:

%b %d %H:%M:%S

Ceci est activé par la ligne suivante dans /etc/rsyslog.conf:

$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat 

Pour activer l'horodatage de haute précision, commentez la ligne:

# $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat 

ce qui fera que rsyslog sera horodaté au format RFC 3339.


Le format RFC 3339 peut être simulé par la commande date:

% date '+%Y-%m-%dT%H:%M:%S.%6N%:z'
2016-06-05T18:27:58.721607+06:00

Ou même plus court:

% date '+%FT%T.%6N%:z'      
2016-06-05T18:29:32.569776+06:00

Ou en utilisant l'option native --rfc-3399:

% date --rfc-3339=ns
2016-06-05 18:31:50.897557592+06:00
9
heemayl