You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Datadog中合并两列日期与时间为可排序格式?

合并Datadog中CSV的日期与时间列为可排序日期时间格式

方案一:导入阶段通过日志处理管道持久化转换

如果你的CSV是以日志形式导入Datadog,推荐用日志处理管道创建永久的合并日期时间字段:

  • 打开Datadog控制台,进入Logs > Pipelines,找到处理该CSV的管道(或新建管道)。
  • 添加处理器:
    • 先添加Grok Parser,解析原始日期和时间字段(替换为你CSV中实际的列名,比如date和timestamp):
      %{DATE_EU:date} %{TIME:timestamp}
      
    • 再添加String Builder处理器,创建新字段(比如命名为combined_datetime),输入以下表达式完成格式转换与拼接:
      {{date.split('.')[2]}}-{{date.split('.')[1]}}-{{date.split('.')[0]}} {{timestamp.split('.')[0]}}:{{timestamp.split('.')[1]}}:{{timestamp.split('.')[2]}}
      
      这个表达式会把DD.MM.YYYY转为YYYY-MM-DD,把hh.mm.ss.mmm截取前三位转为hh:mm:ss,再合并成标准格式。
    • 最后添加Date Remapper处理器,将combined_datetime映射为Datadog官方的@timestamp字段,这样该字段会被自动识别为可排序的时间类型。

方案二:查询时用DQL临时转换

如果不需要永久保存合并字段,仅在查询时临时处理,用Datadog查询语言(DQL)即可:

logs
| parse "*.date = \"%{DATE_EU:raw_date}\" *.timestamp = \"%{TIME:raw_time}\""
| format("%s-%s-%s %s:%s:%s", raw_date.split('.')[2], raw_date.split('.')[1], raw_date.split('.')[0], raw_time.split('.')[0], raw_time.split('.')[1], raw_time.split('.')[2]) as combined_datetime
| convert combined_datetime to timestamp
| sort combined_datetime asc

代码说明:

  • parse:提取CSV中的日期和时间字段(替换为你实际的列名)
  • format:拼接并转换格式,生成YYYY-MM-DD hh:mm:ss格式的字符串
  • convert:将字符串转为Datadog可识别的时间戳类型,确保支持排序
  • sort:按合并后的日期时间升序排序(可改为desc降序)

验证

转换完成后,可通过日志详情或查询结果确认combined_datetime字段格式正确,且能正常按时间排序。

内容的提问来源于stack exchange,提问作者Andreas F

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 15:06:16