【发布时间】:2021-04-11 15:07:15
【问题描述】:
我正在尝试将我的 ECS Fargate 日志发送到 Datadog。为此,我需要将我的 Datadog API_KEY 作为 logConfiguration 对象中的字段传递。我需要保护我的 API_KEY,因此我通过 secretOptions 对象的 secretOptions 密钥使用 AWS Secrets Manager。
我正在按照 AWS here 中的步骤进行操作。 Datadog 网站的完整步骤可以在here
找到由于某种原因,我没有在 datadog 中看到日志。这是aws_ecs_task_definition资源的container_definitions对象下我的Terraform代码的日志配置部分:
"logConfiguration": {
"logDriver": "awsfirelens",
"options": {
"Name": "datadog",
"Host": "http-intake.logs.datadoghq.com",
"dd_service": "myservice",
"dd_source": "mysource",
"dd_message_key": "log",
"dd_tags": "env:dev",
"TLS": "on",
"provider": "ecs"
},
"secretOptions": [{
"name": "apikey",
"valueFrom": "arn:aws:secretsmanager:${data.aws_region.current.name}:${data.aws_caller_identity.current.account_id}:secret:mysecret"
}]
}
如果我取出secretOptions 并以明文形式添加 apikey,则日志会显示在 datadog 控制台上:
"logConfiguration": {
"logDriver": "awsfirelens",
"options": {
"Name": "datadog",
"Host": "http-intake.logs.datadoghq.com",
"dd_service": "myservice",
"dd_source": "mysource",
"dd_message_key": "log",
"dd_tags": "env:dev",
"TLS": "on",
"provider": "ecs",
"apikey": "myapikey"
}
}
我当然不能只以纯文本形式发送我的 API_KEY。 secretOptions 是否不适用于 Datadog?任何帮助表示赞赏。
【问题讨论】:
标签: terraform aws-fargate datadog aws-secrets-manager firelens