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

如何在Datadog监控查询中自动带入执行当日日期?

解决方案

针对你的需求,有两种可行的方法实现Datadog监控查询中自动引入当日日期:

方法一:使用Datadog内置模板变量(适用于日期字符串字段)

如果@SomeField的值是YYYY-MM-DD格式的日期字符串,可以直接在查询中使用Datadog的{{date()}}模板函数,它会在监控每次运行时自动解析为当日的日期。

修改后的CDKTF代码示例:

import { Monitor } from '@cdktf/provider-datadog/lib/monitor';
import { Construct } from 'constructs';

export function FooMonitors(context: Construct): void {
  new Monitor(context, `Foo Daily Monitor`, {
    type: "log alert",
    query: `logs("service:foo env:prod \\"Some log message.\\" @SomeField:{{date('YYYY-MM-DD')}}").index("*").rollup("count").last("1d") < 6`,
    name: "Daily Foo Log Count Alert",
    // 补充其他必要参数,如告警消息、标签、通知配置等
  });
}

这里的{{date('YYYY-MM-DD')}}会在监控执行时动态替换为当日的日期(例如2024-12-15),无需手动更新或重新部署监控。

方法二:使用相对日期范围(适用于时间戳字段)

如果@SomeField是时间戳类型(而非纯日期字符串),可以用Datadog的相对日期范围语法匹配当日的所有日志:

query: `logs("service:foo env:prod \\"Some log message.\\" @SomeField:[now/d to now]").index("*").rollup("count").last("1d") < 6`,

now/d表示当日零点,now表示当前时间,这个范围会自动匹配当日产生的所有符合条件的日志,等价于过滤当日日期的日志。

注意事项

  • 确保你的Datadog监控评估频率设置为每日一次(可在监控配置的"评估频率"选项中调整),避免不必要的重复执行。
  • 使用模板变量时,注意TypeScript字符串中的双引号转义,避免语法错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 15:47:15