You need to enable JavaScript to run this app.
导航
时间解析插件
最近更新时间:2024.07.02 10:17:40首次发布时间:2024.03.20 11:31:00

您在使用 LogCollector 采集日志时,可以使用时间解析插件解析原始日志中的时间内容,并将解析后的时间作为日志时间戳记录在服务端。

说明

LogCollector V1.0.48 及后续版本支持该插件。如何查看LogCollector版本,请参考查看软件版本

参数说明

名称

类型

是否必选

说明

field

String

待解析的字段名称。

format

String

指定时间格式,用于解析时间内容。时间格式详情请参考时间格式

说明

  • 默认情况下,配置时间转换格式时,支持配置到毫秒。如果时间转换格式中未指定毫秒级的解析方式,则毫秒部分会自动填充为 0。
  • 开启高精度时间戳功能后,配置时间转换格式时,支持配置到纳秒。如果时间转换格式中未指定纳秒级的解析方式,则纳秒部分会自动填充为 0。

time_zone

String

配置时区。默认为 LogCollector 所在服务器的时区,支持 GMT 和 UTC。例如GMT+08:00, Asia/Shanghai

extract_regex

String

用于提取时间的正则表达式。如果您只解析字段中的部分时间内容,可以通过正则表达式提取。

enable_nanosecond

Boolean

是否开启高精度时间功能。开启后,解析后的日志时间精度为纳秒级别。
默认情况下,日志时间精度为毫秒级别。

配置示例

示例 1:未开启高精度时间戳功能

  • 经过采集模式或者其他插件处理后的键值对日志

    "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
    

示例 2:开启高精度时间功能

  • 经过采集模式或者其他插件处理后的键值对日志。

    "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