将 CloudWatch 日志与配合使用 Amazon Batch - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 CloudWatch 日志与配合使用 Amazon Batch

您可以在 EC2 资源上配置 Amazon Batch 任务,将详细的日志信息和指标发送到 CloudWatch 日志。这样就可以在同一个方便的位置查看作业中的不同日志。有关 CloudWatch 日志的更多信息,请参阅什么是 Amazon CloudWatch 日志? 在《亚马逊 CloudWatch 用户指南》中。

注意

默认情况下, Amazon Fargate 容器的 CloudWatch 日志处于启用状态。

要开启和自定义 CloudWatch 日志记录,请查看以下一次性配置任务:

  • 对于基于 EC2 资源的 Amazon Batch 计算环境,请向ecsInstanceRole角色添加 IAM 策略。有关更多信息,请参阅 添加 CloudWatch 日志 IAM 策略

  • 创建包含详细 CloudWatch 监控的 Amazon EC2 启动模板,然后在创建 Amazon Batch 计算环境时指定该模板。您也可以在现有映像上安装 CloudWatch代理,然后在 Amazon Batch 首次运行向导中指定映像。

  • (可选)配置 awslogs 驱动程序。可以添加用于更改 EC2 和 Fargate 资源默认行为的参数。有关更多信息,请参阅 使用 awslogs 日志驱动程序

添加 CloudWatch 日志 IAM 策略

在您的任务可以向日志发送日志数据和详细指标之前,您必须创建使用 CloudWatch 日 CloudWatch 志 API 的 IAM 策略。创建 IAM policy 后,将其附加到ecsInstanceRole角色。

注意

如果该ECS-CloudWatchLogs策略未附加到该ecsInstanceRole角色,则仍可以将基本指标发送到 CloudWatch Logs。但是,基本指标不包括日志数据或详细指标,例如可用磁盘空间。

Amazon Batch 计算环境使用 Amazon EC2 资源。使用 Amazon Batch 首次运行向导创建计算环境时, Amazon Batch 会创建ecsInstanceRole角色并使用该角色配置环境。

如果您未使用首次运行向导,则可以在 Amazon Command Line Interface 或 Amazon Batch API 中创建计算环境时指定ecsInstanceRole角色。有关更多信息,请参阅Amazon CLI 命令参考Amazon Batch API 参考

创建ECS-CloudWatchLogs IAM policy
  1. 打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择策略

  3. 选择创建策略

  4. 选择 JSON,然后输入以下策略:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }
  5. 选择下一步:标签

  6. (可选)对于添加标签,选择添加标签以向策略添加标签。

  7. 选择下一步:查看

  8. 查看策略页面上,对于名称,输入ECS-CloudWatchLogs;然后输入可选的描述

  9. 选择 创建策略

ECS-CloudWatchLogs策略附加到ecsInstanceRole
  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择角色

  3. 选择ecsInstanceRole。如果角色不存在,请按照Amazon ECS 实例角色中的程序来创建角色。

  4. 选择添加权限,然后选择附加策略

  5. 选择 ECS-CloudWatch Logs 策略,然后选择附加策略

安装和配置代 CloudWatch 理

您可以创建包含 CloudWatch 监控功能的 Amazon EC2 启动模板。有关更多信息,请参阅 Amazon EC2 用户指南中的通过启动模板启动实例高级详情

您也可以在现有 Amazon EC2 AMI 上安装 CloudWatch 代理,然后在 Amazon Batch 首次运行向导中指定映像。有关更多信息,请参阅安装 CloudWatch 代理入门 Amazon Batch

注意

Amazon Fargate 资源不支持启动模板。

查看 CloudWatch 日志

您可以在中查看和搜索 CloudWatch 日志日志 Amazon Web Services Management Console。

注意

数据可能需要几分钟才能显示在 “ CloudWatch 日志” 中。

查看您的 CloudWatch 日志数据
  1. 打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/

  2. 在左侧导航窗格中选择日志,然后选择日志组

    CloudWatch 控制台日志组
  3. 选择要查看的日志组。

    CloudWatch 控制台日志流
  4. 选择要查看的日志流。默认情况下,数据流由作业名称的前 200 个字符和 Amazon ECS 任务 ID 进行标识。

    提示

    要下载日志流数据,请选择操作

    CloudWatch 控制台日志事件