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

CloudWatch Log Agent配置更新后日志无法导出至CloudWatch求助

CloudWatch日志代理配置更新后日志停止导出排查方案
  • 核对配置文件细节
    尽管/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json -s返回配置成功,仍需手动校验:

    • 确认file_path路径完全正确,包括文件名、层级目录,且代理运行用户cwagent拥有该文件的读取权限(执行ls -l /path/to/target/log查看权限)
    • 检查log_group_name和log_stream_name是否符合CloudWatch命名规范,避免特殊字符或格式错误
    • 确认配置中的变量(如{instance_id})能正常解析,未出现拼写错误
    • 核对region字段与EC2实例所在AWS区域一致
  • 验证代理运行状态与IAM权限

    • 执行systemctl status amazon-cloudwatch-agent确认代理处于running状态,若异常则重启:systemctl restart amazon-cloudwatch-agent
    • 检查EC2实例关联的IAM角色是否具备CloudWatch日志写入权限,需包含logs:CreateLogGroup、logs:CreateLogStream、logs:PutLogEvents操作权限,可通过aws iam get-role-policy --role-name <your-iam-role> --policy-name <policy-name>核对
    • 测试代理与CloudWatch服务的连通性:执行curl -v https://logs.<your-region>.amazonaws.com,确认无连接超时或SSL证书错误
  • 深度分析代理日志
    查看完整代理日志(默认路径/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log),重点搜索:

    • ERROR/WARN级别的日志,定位配置解析、权限或连接类错误
    • Successfully parsed config确认配置已被正确加载
    • Start tailing file确认代理已开始监听目标日志文件
      若日志中无读取记录,大概率是file_path未匹配到有效文件,可尝试使用绝对路径、通配符测试,或确认目标日志文件有新内容写入(无新内容时代理不会主动发送)
  • 测试最小化配置
    创建简化配置文件test-config.json:

    {
      "logs": {
        "logs_collected": {
          "files": {
            "collect_list": [
              {
                "file_path": "/tmp/test-cloudwatch.log",
                "log_group_name": "test-log-group",
                "log_stream_name": "test-stream-{instance_id}"
              }
            ]
          }
        }
      },
      "metrics": {
        "metrics_collected": {}
      }
    }
    

    加载配置:/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/tmp/test-config.json -s,手动向/tmp/test-cloudwatch.log写入测试内容,再检查CloudWatch控制台和代理日志是否有新日志流入

  • 排查系统级限制

    • 执行df -h确认EC2实例磁盘空间充足,日志目录未被占满
    • 检查安全组和系统防火墙是否允许443端口出站访问logs.<region>.amazonaws.com
    • 验证SELinux/AppArmor是否阻止代理读取日志文件,可临时执行setenforce 0测试,若恢复正常则需配置对应规则放行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 13:15:56