更新时间:2024-08-02 GMT+08:00
分享

场景八:数据转化微秒级标准 ISO8601 时间戳

部分场景需要日志服务的数据加工满足高精度时间戳的需求,当原始日志中存在标准 ISO8601时间格式的字段,您可以使用e_set字段操作函数,将其解析成微秒精度的日志时间。

  • 原始日志
    {
      "source": "1.2.3.4",
      "time": 1704983810,
      "topic": "test",
      "log_time":"2024-01-11 23:10:43.992847200"
    }
  • 加工规则
    e_set(
        "time", dt_parsetimestamp(v("log_time"), tz="Asia/Shanghai"), mode="overwrite",
    )
    e_set("tmp_ms", dt_prop(v("log_time"), "microsecond"))
    e_set(
        "time_ns_part", op_mul(ct_int(v("tmp_ms")), 1000),
    )
  • 加工结果
    {
    	"time_ns_part": 992847000,
    	"tmp_ms": 992847,
    	"topic": "test",
    	"source": "1.2.3.4",
    	"time": 1704985843,
    	"log_time": "2024-01-11 23:10:43.992847200"
    }

相关文档