如何在Datadog中将含不同ID的URL路径分组为单一统计结果?
Datadog中实现带ID URL的聚合展示
完全可以实现,以下是两种实用方案:
方案一:查询时直接用正则替换处理字段
编辑饼图的查询配置,将原分组字段@http.url_details.path替换为正则处理后的结果,自动聚合带ID的URL:
- 针对单一模式(如
/test/test-id/数字),使用函数:regex_replace(@http.url_details.path, '^(/test/test-id)/\d+$', '$1') - 如果有多种带ID的URL模式(如
/test/xxx/数字),用更通用的正则:regex_replace(@http.url_details.path, '^(/test/[^/]+)/\d+$', '$1') - 保留原过滤器
@http.url_details.path:*\test*,执行查询后,饼图会把/test/test-id/12、/test/test-id/34这类URL统一聚合为/test/test-id,其他非ID结尾的/test路径不受影响。
方案二:通过日志管道提前生成清洗后的字段
如果这类URL模式固定,可提前在日志管道中处理,后续所有图表都能直接使用清洗后的字段:
- 进入Datadog「日志管理」→「管道」,找到对应日志管道
- 添加「正则提取」处理器:
- 目标字段选择
@http.url_details.path - 正则表达式填写
^(/test/[^/]+)/\d+$ - 设置提取后的新字段名(如
@cleaned_url_path),并配置「无匹配时保留原字段值」
- 目标字段选择
- 保存处理器后,新接收的日志会自动带上
@cleaned_url_path字段 - 回到饼图,将分组字段改为
@cleaned_url_path,即可实现聚合展示
内容的提问来源于stack exchange,提问作者PloniStacker
相关产品推荐
相关产品推荐

