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

Kubernetes集群中DataDog日志采集失效问题排查求助

问题:DataDog Agent无法将应用Pod日志同步至DataDog平台

我们通过DataDog Operator在Kubernetes 1.22集群中部署DataDog,采用Helm安装且未做自定义配置,已遵循官方指引操作。目前Operator、Cluster Agent及节点Agent Pod均正常运行,Agent可与DataDog端点正常通信(集群已显示在DataDog基础设施列表中),但应用Pod的日志未出现在DataDog平台中,无法定位原因。

已确认以下关键信息:

  • Agent配置中agent.log.enabled设为true;
  • 应用Pod日志存在于/var/log/pods/目录,包含预期日志内容;
  • DataDog Agent可访问这些日志文件。

推测问题出在Agent采集到日志到显示在DataDog UI之间的环节,恳请提供排查思路。


Agent配置

apiVersion: datadoghq.com/v1alpha1
kind: DatadogAgent
metadata:
  name: datadog
  namespace: datadog
spec:
  agent:
    apm:
      enabled: false
    config:
      tolerations:
        - operator: Exists
    image:
      name: "gcr.io/datadoghq/agent:latest"
    log:
      enabled: true
    process:
      enabled: false
      processCollectionEnabled: false
  clusterAgent:
    config:
      admissionController:
        enabled: true
        mutateUnlabelled: true
      clusterChecksEnabled: true
      externalMetrics:
        enabled: true
    image:
      name: "gcr.io/datadoghq/cluster-agent:latest"
    replicas: 1
  clusterChecksRunner: {}
  credentials:
    apiSecret:
      keyName: api-key
      secretName: datadog-secret
    appSecret:
      keyName: app-key
      secretName: datadog-secret
  features:
    kubeStateMetricsCore:
      enabled: false
    logCollection:
      enabled: true
    orchestratorExplorer:
      enabled: false

某DataDog Agent的环境变量

DD_API_KEY : secretKeyRef(datadog-secret.api-key)
DD_CLUSTER_AGENT_AUTH_TOKEN : secretKeyRef(datadog.token) 
DD_CLUSTER_AGENT_ENABLED : true
DD_CLUSTER_AGENT_KUBERNETES_SERVICE_NAME : datadog-cluster-agent
DD_COLLECT_KUBERNETES_EVENTS : false
DD_DOGSTATSD_ORIGIN_DETECTION : false
DD_DOGSTATSD_SOCKET : /var/run/datadog/statsd/statsd.sock
DD_EXTRA_CONFIG_PROVIDERS : clusterchecks endpointschecks
DD_HEALTH_PORT : 5555
DD_KUBERNETES_KUBELET_HOST : fieldRef(v1:status.hostIP)
DD_LEADER_ELECTION : false
DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL : false
DD_LOGS_CONFIG_K8S_CONTAINER_USE_FILE : true
DD_LOGS_ENABLED : true
DD_LOG_LEVEL : INFO
KUBERNETES : yes
排查思路

1. 检查日志采集范围配置

当前环境变量DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL设为false,Agent仅会采集带有ad.datadoghq.com/<container-name>.logs: 'true'标签的Pod日志。可按以下步骤验证:

  • 为目标应用Pod添加上述标签,观察日志是否出现在DataDog平台;
  • 临时将DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL改为true,测试是否能采集所有容器日志,确认是否是范围限制导致的问题。

2. 查看Agent内部日志

进入Agent Pod查看日志,定位采集或发送环节的问题:

kubectl exec -n datadog <agent-pod-name> -- tail -f /var/log/datadog/agent.log

重点关注:

  • 日志文件的采集状态(成功/失败记录);
  • 日志发送至DataDog端点时的报错(如认证失败、网络不通);
  • 日志过滤、丢弃相关的日志条目。

3. 检查DataDog平台日志管道规则

登录DataDog平台,进入Logs -> Pipelines页面:

  • 检查是否存在将目标应用日志标记为丢弃的规则;
  • 验证管道匹配条件是否正确,避免因规则错误导致日志未被解析显示。

4. 确认日志索引与存储配置

  • 检查目标日志是否被发送到非默认索引,导致在默认视图中无法找到;
  • 确认日志保留期限设置,排查是否因日志过期被清理。

5. 验证Agent日志发送连通性

  • 确认DD_SITE环境变量是否正确(若使用非默认DataDog站点);
  • 在Agent Pod内测试与日志接收端点的连通性:
kubectl exec -n datadog <agent-pod-name> -- curl -I https://http-intake.logs.datadoghq.com/v1/input

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 13:31:08