El analizador timestamp
no genera campos, sino que transforma su entrada de una cadena a un formato de marca de tiempo interna que se muestra en milisegundos desde el inicio de época UNIX, 1 de enero de 1970 (medianoche UTC/GMT).
La única opción de configuración admitida es format
. Por ejemplo, format=%Y-%m-%d %H:%M:%S
.
A diferencia del analizador CLF, el analizador de timestamp
puede analizar el tiempo cuando no hay delimitadores entre los especificadores; por ejemplo %A%B%d%H%M%S%Y%z
.
Los especificadores de formato que utiliza el analizador timestamp
son los siguientes:
'%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
El analizador de marca de tiempo acepta especificadores adicionales, pero sus valores se ignoran y no afectan la hora analizada.
'%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 no se define un parámetro format
, el analizador Timestamp
analiza las marcas de tiempo usando los formatos predeterminados.
Analizador automático de marcas de tiempo
timestamp
en
field_decoder
. Por ejemplo:
[parser|mycsv] base_parser=csv debug=yes fields=timestamp,action,source_id,dest field_decoder={"timestamp": "timestamp"}
Un analizador de marca de tiempo con la configuración predeterminada
Este ejemplo muestra un analizador timestamp
con una configuración predeterminada.
[parser|tsp_parser] base_parser=timestamp debug=no format=%Y-%m-%d %H:%M:%S%f
Para integrar un analizador timestamp
con otros analizadores, por ejemplo el analizador CSV, especifique la siguiente configuración.
[parser|mycsv] base_parser=csv fields=timestamp,action,source_id,dest field_decoder={"timestamp": "tsp_parser"}
Cuando se define esta configuración, el analizador mycsv
extrae los campos con los nombres que se especifican en la configuración y ejecuta tsp_parser
en el contenido del campo timestamp
. Si tsp_parser
recupera una marca de tiempo válida, el servidor utiliza esa marca de tiempo para el mensaje del registro.