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

Datadog集群Agent Helm配置:日志与Metrics采集规则求助

Datadog集群Agent日志与Metrics过滤配置解决方案

正确的Helm Chart配置

datadog:
  logs:
    enabled: true
    containerCollectAll: false  # 关闭全量日志采集,仅采集符合规则的日志
  # 全局容器过滤:为Metrics和日志设置基础范围(可被单独规则覆盖)
  containerInclude: "kube_namespace:<my_namespace> kube_namespace:<my_namespace_2>"
  # 日志专属包含规则:仅采集<my_namespace>的日志
  containerIncludeLogs: "kube_namespace:<my_namespace>"
  # Metrics专属包含规则:采集两个命名空间的Metrics
  containerIncludeMetrics: "kube_namespace:<my_namespace> kube_namespace:<my_namespace_2>"

配置逻辑说明

  1. 日志采集控制

    • 将containerCollectAll设为false,日志仅会采集匹配containerIncludeLogs规则的容器,无需额外配置containerExcludeLogs,直接通过精准包含实现需求。
    • 若使用containerCollectAll: true,需通过containerExcludeLogs排除所有非目标命名空间,但这种方式易遗漏或误匹配,不如精准包含可靠。
  2. Metrics采集控制

    • containerIncludeMetrics会覆盖全局的containerInclude规则,单独指定需要采集Metrics的命名空间即可,无需额外排除规则。

之前配置失败的原因分析

  1. containerCollectAll设为false无日志:
    你之前的全局containerInclude仅包含<my_namespace>,虽然containerIncludeLogs也设为该值,但如果命名空间名称拼写(含大小写)有误,或容器标签未正确携带kube_namespace,会导致匹配失败。请确认命名空间名称完全一致,且容器的kube_namespace标签正确。

  2. containerCollectAll为true + excludeLogs: kube_namespace:*":
    该规则会排除所有命名空间的日志,自然无日志采集,属于规则逻辑误用。

  3. excludeLogs使用kube_namespace:!<my_namespace>:
    Datadog的排除规则不支持!(取反)语法,!仅用于包含规则中表示“非”,因此该规则无效,导致所有日志被发送。

额外注意事项

  • 标签匹配为精确匹配,请确保kube_namespace的值与实际命名空间名称完全一致(包括大小写)。
  • 若需要更复杂的过滤规则,可结合容器名称、镜像等其他标签(如container_name:<xxx>)进行组合匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 19:45:19