时间戳
编辑时间戳编辑
此功能处于测试阶段,如有更改,恕不另行通知。其设计和代码不如正式的 GA 功能成熟,按原样提供,不作任何保证。测试版功能不受正式 GA 功能的支持服务等级协议 (SLA) 的约束。
timestamp
处理器用于从字段中解析时间戳。默认情况下,时间戳处理器会将解析后的结果写入 @timestamp
字段。您可以通过设置 target_field
参数来指定不同的字段。时间戳值将根据 layouts
参数进行解析。可以指定多个布局,它们将按顺序使用以尝试解析时间戳字段。
此处理器使用的时间戳布局与 Logstash 和 Elasticsearch Ingest Node 中日期处理器支持的格式不同。
使用基于以下特定时间的参考时间来描述 layouts
Mon Jan 2 15:04:05 MST 2006
由于 MST 为 GMT-0700,因此参考时间为
01/02 03:04:05PM '06 -0700
要定义自己的布局,请以与您希望解析的时间戳匹配的格式重写参考时间。有关更多布局示例和详细信息,请参阅 Go 时间包文档。
如果布局不包含年份,则会将指定 timezone
中的当前年份添加到时间值中。
表 6. 时间戳选项
名称 | 必需 | 默认值 | 说明 | |
---|---|---|---|---|
|
是 |
包含要解析的时间的源字段。 |
||
|
否 |
@timestamp |
解析后的时间值的目标字段。目标值始终以 UTC 格式写入。 |
|
|
是 |
定义预期时间值格式的时间戳布局。除了布局之外,还接受 |
||
|
否 |
UTC |
解析不包含时区的时间时使用的 IANA 时区名称(例如 |
|
|
否 |
假 |
当源字段缺失时忽略错误。 |
|
|
否 |
假 |
忽略处理器产生的所有错误。 |
|
|
否 |
加载处理器时必须成功解析的时间戳列表。 |
||
|
否 |
此处理器实例的标识符。对调试很有用。 |
下面是一个示例,它解析 start_time
字段并将结果写入 @timestamp
字段,然后删除 start_time
字段。加载处理器时,它将立即验证两个 test
时间戳是否使用此配置进行解析。
processors: - timestamp: field: start_time layouts: - '2006-01-02T15:04:05Z' - '2006-01-02T15:04:05.999Z' - '2006-01-02T15:04:05.999-07:00' test: - '2019-06-22T16:33:51Z' - '2019-11-18T04:59:51.123Z' - '2020-08-03T07:10:20.123456+02:00' - drop_fields: fields: [start_time]