L'analyseur timestamp ne produit pas de champs, mais transforme les entrées du format de chaîne au format d'horodatage interne affiché en millisecondes à compter du début de l'époque UNIX, le 1er janvier 1970 (minuit UTC/GMT).

L'unique option de configuration prise en charge est format. Par exemple, format=%Y-%m-%d %H:%M:%S.

Contrairement à l'analyseur Common Log Format (CLF), l'analyseur timestamp peut analyser l'heure lorsque les spécificateurs d'heures ne sont séparés par aucun délimiteur, comme suit : %A%B%d%H%M%S%Y%z.

Les spécificateurs de formats utilisés par l'analyseur timestamp sont les suivants :

'%a':    Abbreviated weekday name, for example: Thu
'%A':    Full weekday name, for example: Thursday
'%b':    Abbreviated month name, for example: Aug
'%B':    Full month name, for example: August
'%d':    Day of the month, for example: 23. strftime() expects zero-padded (01-31) digits
         for this specifier but Log Insight agents can parse space-padded and non-padded 
         day numbers, too. 
'%e':    Day of the month, for example: 13. strftime() expects space-padded ( 1-31) digits 
         for this specifier but Log Insight agents can parse zero-padded and non-padded 
         day numbers too. 
'%f':    Fractional seconds of time, for example: .036 'f' specifier assumes that '.' or ',' 
         character should exist before fractional seconds and there is no need to mention 
         that character in the format. If none of these characters precedes fractional seconds, 
         timestamp wouldn't be parsed.
'%H':    Hour in 24h format (00-23), for example: 14. Zero-padded, space-padded, and non-padded hours 
         are supported.
'%I':    Hour in 12h format (01-12), for example: 02. Zero-padded, space-padded and non-padded hours 
         are supported.
'%m':    Month as a decimal number (01-12), for example: 08. Zero-padded, space-padded 
         and non-padded month numbers are supported.
'%M':    Minute (00-59), for example: 55
'%p':    AM or PM designation, for example: PM
'%S':    Second (00-61), for example: 02
'%s':    Total number of seconds from the UNIX epoch start, for example 1457940799 
         (represents '2016-03-14T07:33:19' timestamp)
'%Y':    Year, for example: 2001
'%z':    ISO 8601 offset from UTC in timezone (1 minute=1, 1 hour=100)., for example: +100

Des spécificateurs supplémentaires sont acceptés par l'analyseur Timestamp, mais leurs valeurs sont ignorées et n'affectent pas l'heure analysée.

'%C':    Year divided by 100 and truncated to integer (00-99), for example: 20
'%g':    Week-based year, last two digits (00-99), for example, 01
'%G':    Week-based year, for example, 2001
'%j':    Day of the year (001-366), for example: 235
'%u':    ISO 8601 weekday as number with Monday as 1 (1-7), for example: 4
'%U':    Week number with the first Sunday as the first day of week one (00-53), for example: 33
'%V':    ISO 8601 week number (00-53), for example: 34
'%w':    Weekday as a decimal number with Sunday as 0 (0-6), for example: 4
'%W':    Week number with the first Monday as the first day of week one (00-53), for example: 34
'%y':    Year, last two digits (00-99), for example: 01

Si un paramètre format n'est pas défini, l'analyseur Timestamp analyse les horodatages selon les formats par défaut.

Analyseur Automatic Timestamp

L'analyseur Automatic Timestamp est appelé lorsqu'aucun format n'est défini pour l'analyseur Timestamp. L'analyseur peut aussi être appelé directement sans définition d'analyseur Timestamp en utilisant timestamp dans field_decoder. Par exemple :
[parser|mycsv]
base_parser=csv
debug=yes
fields=timestamp,action,source_id,dest
field_decoder={"timestamp": "timestamp"}

Analyseur timestamp avec la configuration par défaut

Cet exemple montre un analyseur timestamp avec une configuration par défaut.

[parser|tsp_parser]
base_parser=timestamp
debug=no
format=%Y-%m-%d %H:%M:%S%f

Pour intégrer un analyseur timestamp à d'autres analyseurs, tels que les analyseurs Comma-Separated Value (CSV), spécifiez la configuration suivante :

[parser|mycsv]
base_parser=csv 
fields=timestamp,action,source_id,dest
field_decoder={"timestamp": "tsp_parser"}

Lorsque cette configuration est définie, l'analyseur mycsv extrait les champs qui incluent les noms spécifiés dans la configuration et exécute tsp_parser sur le contenu du champ timestamp. Si tsp_parser récupère un horodatage valide, le serveur utilise cet horodatage pour le message de journal.