AWSSupport-CollectECSInstanceLogs - AWS Systems Manager 自动化运行手册参考

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

AWSSupport-CollectECSInstanceLogs

描述

AWSSupport-CollectECSInstanceLogs运行手册从亚马逊弹性计算云 (Amazon) 实例收集操作系统和亚马逊弹性容器服务 (Amazon ECS) 相关的日志文件,以帮助您解决常见的 EC2亚马逊 ECS 问题。当自动化收集关联的日志文件时,会对文件系统进行更改。这些更改包括创建临时目录和日志目录、将日志文件复制到这些目录,以及将日志文件压缩到档案中。

如果您为 LogDestination 参数指定一个值,此自动化会评估您指定的 Amazon Simple Storage Service (Amazon S3) 存储桶的策略状态。为了保护从您的 Amazon EC2 实例收集的日志的安全,如果策略状态设置isPublictrue,或者如果访问控制列表 (ACL) 向 All Users Amazon S3 预定义组授予READ|WRITE权限,则不会上传日志。此外,如果提供的存储桶在您的账户中不可用,日志将不会上传。有关 Amazon S3 预定义组的更多信息,请参阅《Amazon Simple Storage Service 用户指南》中的 Amazon S3 预定义组

运行此自动化(控制台)

文档类型

自动化

所有者

Amazon

平台

Linux、Windows

参数

  • AutomationAssumeRole

    类型:字符串

    描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。

  • ECSInstance我是

    类型:字符串

    描述:(必需)需要收集日志的实例 ID。指定的实例必须由 Systems Manager 托管。

  • LogDestination

    类型:字符串

    描述:(可选)您中 AWS 账户 用于上传存档日志的 Amazon S3 存储桶。

所需的 IAM 权限

AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。

  • ssm:ListCommandInvocations

  • ssm:ListCommands

  • ssm:SendCommand

  • ssm:DescribeInstanceInformation

我们建议您在ECSInstanceId参数中指定的亚马逊 EC2 实例具有附加AmazonSSMManagedInstanceCore亚马逊托管策略的 IAM 角色。要将日志档案上传到您在 LogDestination 参数中指定的 Amazon S3 存储桶,您必须添加以下权限:

  • s3:PutObject

  • s3:ListBucket

  • s3:GetBucketPolicyStatus

  • s3:GetBucketAcl

文档步骤

  • assertInstanceIsManaged - 验证您在 ECSInstanceId 参数中指定的实例是否由 Systems Manager 管理。

  • getInstancePlatform - 获取您在 ECSInstanceId 参数中指定的实例的操作系统 (OS) 平台的相关信息。

  • verifyInstancePlatform - 根据 OS 平台对自动化进行分支。

  • runLogCollectionScriptOnLinux - 在 Linux 实例上收集操作系统和 Amazon ECS 相关日志文件,并在 /var/log/collectECSlogs 目录中创建一个归档文件。

  • runLogCollectionScriptOnWindows - 在 Windows 实例上收集操作系统和 Amazon ECS 相关日志文件,并在 C:\ProgramData\collectECSlogs 目录中创建一个归档文件。

  • verifyIfS3BucketProvided - 验证是否为 LogDestination 参数指定了一个值。

  • runUploadScript - 基于操作系统平台对自动化步骤进行分支。

  • runUploadScriptOnLinux - 将日志档案上传到 LogDestination 参数中指定的 Amazon S3 存储桶,并从操作系统中删除归档的日志文件。

  • runUploadScriptOnWindows - 将日志档案上传到 LogDestination 参数中指定的 Amazon S3 存储桶,并从操作系统中删除归档的日志文件。