【问题标题】:Log driver awslogs requires options: awslogs-region, awslogs-group日志驱动程序 awslogs 需要选项:awslogs-region、awslogs-group
【发布时间】:2020-10-10 21:04:52
【问题描述】:

我的 AWS ECS Task definition 有一个 json 文件,例如:

[
    {
      "name": "my-name",
      "image": "url",
      "cpu": 2,
      "dnsSearchDomains": null,
      "network_configuration":"awsvpc",
      "entryPoint": null,
      "portMappings": [
        {
          "hostPort": 8080,
          "protocol": "tcp",
          "containerPort": 8080
        }
      ],
      "command": null,
      "linuxParameters": null,
      "environment": [],
      "resourceRequirements": null,
      "ulimits": null,
      "dnsServers": null,
      "mountPoints": [
        {
          "readOnly": null,
          "containerPath": "/fldr",
          "sourceVolume": "fldr"
        }
      ],
      "workingDirectory": null,
      "secrets": null,
      "dockerSecurityOptions": null,
      "memoryReservation": 128,
      "volumesFrom": [],
      "stopTimeout": null,
      "startTimeout": null,
      "firelensConfiguration": null,
      "dependsOn": null,
      "disableNetworking": null,
      "interactive": null,
      "healthCheck": null,
      "essential": true,
      "links": null,
      "hostname": null,
      "extraHosts": null,
      "pseudoTerminal": null,
      "user": null,
      "readonlyRootFilesystem": null,
      "dockerLabels": null,
      "systemControls": null,
      "privileged": null,
      "logConfiguration": {
        "logDriver": "awslogs",
        "awslogs-region": "eu-west-1",
        "awslogs-group": "my-cw-group"
      }
    }
  ]

尽管定义了awslogs-regionawslogs-group 像这样:

"logConfiguration": {
            "logDriver": "awslogs",
            "awslogs-region": "eu-west-1",
            "awslogs-group": "my-cw-group"
          }

当我运行terraform apply 时,它会返回:

Error: ClientException: Log driver awslogs requires options: awslogs-region, awslogs-group

我在 StackOverflow 和 Github 中都找不到相关问题。

【问题讨论】:

  • 您的任务定义和下面的摘录有冲突的值。在构建我的答案时,我以上述示例为例。
  • @AlainO'Dea 你是什么意思?
  • 你在完整的任务定义 JSON 中有"awslogs-group": "my-cw-group",在它下面写的摘录/sn-p 中有"awslogs-group": "pro-airflow-cloudwatch-group"
  • @AlainO'Dea 是的,这是真的,复制代码时出错。谢谢。
  • 完全不用担心!这些问题总是很复杂,您要确保不会无意中在问题中分享秘密。

标签: amazon-web-services containers terraform amazon-cloudwatch ecs-taskdefinition


【解决方案1】:
"logConfiguration": {
  "logDriver": "awslogs",
  "options": {
    "awslogs-region": "eu-west-1",
    "awslogs-group": "my-cw-group"
  }
}

这些选项需要是 options 的成员,它是 logConfiguration 的成员,如上所示。

如果您使用 Fargate,您还需要提供 awslogs-stream-prefix,如文档中的 Specifying a Log Configuration in your Task Definition 中所述。

【讨论】:

    猜你喜欢
    • 2019-06-02
    • 2020-07-04
    • 2017-12-11
    • 2017-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-23
    相关资源
    最近更新 更多