您在使用 LogCollector 采集日志时,可以使用时间解析插件解析原始日志中的时间内容,并将解析后的时间作为日志时间戳记录在服务端。
说明
LogCollector V1.0.48 及后续版本支持该插件。如何查看LogCollector版本,请参考查看软件版本。
名称 | 类型 | 是否必选 | 说明 |
---|---|---|---|
field | String | 是 | 待解析的字段名称。 |
format | String | 是 | 指定时间格式,用于解析时间内容。时间格式详情请参考时间格式。 说明
|
time_zone | String | 否 | 配置时区。默认为 LogCollector 所在服务器的时区,支持 GMT 和 UTC。例如 |
extract_regex | String | 否 | 用于提取时间的正则表达式。如果您只解析字段中的部分时间内容,可以通过正则表达式提取。 |
enable_nanosecond | Boolean | 否 | 是否开启高精度时间功能。开启后,解析后的日志时间精度为纳秒级别。 |
经过采集模式或者其他插件处理后的键值对日志
"message": "[2023-12-19T19:00:00,000] [INFO] java.lang.Exception: exception happened"
LogCollector 插件配置
{ "processors": [ { "strp_time": { "field": "message", "format": "%Y-%m-%dT%H:%M:%S,%f", "time_zone": "GMT+08:00", "extract_regex": "\\[(\\d{4}\\-\\d{2}\\-\\d{2}T\\d{2}:\\d{2}:\\d{2},\\d{3})\\]" } } ] }
处理结果
被解析后的日志时间戳为 1702983600000,即 2023-12-19 19:00:00,000。
"message": "[2023-12-19T19:00:00,000] [INFO] java.lang.Exception: exception happened" Log.Time=1702983600000
经过采集模式或者其他插件处理后的键值对日志。
"message": "[2024-05-15T12:30:19,123456789] [INFO] java.lang.Exception: exception happened"
LogCollector 插件配置
{ "processors": [ { "strp_time": { "field": "message", "format": "%Y-%m-%dT%H:%M:%S,%f", "time_zone": "GMT+08:00", "extract_regex": "\\[(\\d{4}\\-\\d{2}\\-\\d{2}T\\d{2}:\\d{2}:\\d{2},\\d{3})\\]", "enable_nanosecond": true } } ] }
处理结果
被解析后的日志时间戳为 1715747419123,即 2024-05-15 12:30:19,123456789。
"message": "[2024-05-15T12:30:19,123456789] [INFO] java.lang.Exception: exception happened" Log.Time=1715747419123