Amazon CloudWatch Logs
用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

快速入门:在正在运行的 EC2 实例上安装和配置 CloudWatch Logs 代理

您可以使用 CloudWatch Logs 代理安装程序在现有 EC2 实例中安装和配置 CloudWatch Logs 代理。安装完成后,代理会确认它已启动,并保持在运行状态,直到您禁用它为止。

除了该代理之外,您还可以使用 AWS CLI、CloudWatch Logs 开发工具包或 CloudWatch Logs API 发布日志数据。AWS CLI 非常适合用于通过命令行或脚本发布数据。CloudWatch Logs 软件开发软件包非常适合用于直接从应用程序发布日志数据或构建您自己的日志发布应用程序。

步骤 1:为 CloudWatch Logs 配置 IAM 角色或用户

CloudWatch Logs 代理支持 IAM 角色和用户。如果您的实例已有一个与之关联的 IAM 角色,请确保包含下面的 IAM 策略。如果您尚未将 IAM 角色分配给实例,则可以将 IAM 凭证用于后续步骤,也可以向该实例分配 IAM 角色。有关更多信息,请参阅将 IAM 角色附加到实例

为 CloudWatch Logs 配置 IAM 角色或用户

  1. 通过以下网址打开 IAM 控制台:https://console.amazonaws.cn/iam/

  2. 在导航窗格中,选择 Roles

  3. 选择角色的名称,而不是角色的复选框。

  4. Permissions 选项卡上,展开 Inline Policies,然后选择用于创建内联策略的链接。

  5. Set Permissions 页面上,选择 Custom PolicySelect

    有关创建自定义策略的更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的 Amazon EC2 的 IAM 策略

  6. Review Policy 页面上,为 Policy Name 键入策略的名称。

  7. 对于 Policy Document,粘贴以下策略:

    Copy
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws-cn:logs:*:*:*" ] } ] }
  8. 选择 Apply Policy

步骤 2:在现有 Amazon EC2 实例上安装和配置 CloudWatch Logs

安装 CloudWatch Logs 代理的过程取决于 Amazon EC2 实例是运行 Amazon Linux、Ubuntu、CentOS 还是 Red Hat。请根据实例上的 Linux 版本采用适当的步骤。

在现有 Amazon Linux 实例上安装和配置 CloudWatch Logs

从 Amazon Linux AMI 2014.09 开始,CloudWatch Logs 代理作为 RPM 安装随 awslogs 软件包提供。早期版本的 Amazon Linux 可以通过使用 sudo yum update -y 命令更新其实例来访问 awslogs 软件包。通过将 awslogs 软件包作为 RPM 安装 (而不是使用 CloudWatch Logs 安装程序),实例可从 AWS 接收定期软件包更新和修补程序,而不必手动重新安装 CloudWatch Logs 代理。

警告

如果以前是使用 Python 脚本安装的 CloudWatch Logs 代理,请勿使用 RPM 安装方法更新该代理。这样做可能会导致配置问题,使得 CloudWatch Logs 代理不能将您的日志发送到 CloudWatch。

  1. 连接到您的 Amazon Linux 实例。有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的连接到您的实例

    如果在连接时出现问题,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的排除连接实例的故障

  2. 更新您的 Amazon Linux 实例以在软件包存储库中选取最新更改。

    Copy
    [ec2-user ~]$ sudo yum update -y
  3. 安装 awslogs 软件包。

    Copy
    [ec2-user ~]$ sudo yum install -y awslogs
  4. 编辑 /etc/awslogs/awscli.conf 文件,在 [default] 一节中指定需要查看日志数据的区域并添加您的凭证。

    Copy
    region = us-east-1 aws_access_key_id = <YOUR ACCESS KEY> aws_secret_access_key = <YOUR SECRET KEY>

    注意

    如果您的实例是使用具有相应 CloudWatch Logs 使用权限的 IAM 角色或用户启动的,则可以选择在此添加凭证。

  5. 编辑 /etc/awslogs/awslogs.conf 文件以配置要跟踪的日志。有关编辑此文件的更多信息,请参阅 CloudWatch Logs 代理参考

  6. 启动 awslogs 服务。

    Copy
    [ec2-user ~]$ sudo service awslogs start Starting awslogs: [ OK ]
  7. (可选) 检查 /var/log/awslogs.log 文件中是否有在启动服务时记录的错误。

  8. (可选) 在每次系统启动时运行以下命令以启动 awslogs 服务。

    Copy
    [ec2-user ~]$ sudo chkconfig awslogs on
  9. 在代理运行一段时间后,可以在 CloudWatch 控制台看到新创建的日志组和日志流。

    要查看日志,请参阅 查看发送到 CloudWatch Logs 的日志数据

在现有 Ubuntu Server、CentOS 或 Red Hat 实例上安装和配置 CloudWatch Logs

如果使用运行 Ubuntu Server、CentOS 或 Red Hat 的 AMI,请使用以下过程在实例上手动安装 CloudWatch Logs 代理。

  1. 连接到您的 EC2 实例。有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的连接到您的实例

    如果在连接时出现问题,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的排除连接实例的故障

  2. 运行 CloudWatch Logs 代理安装程序。在实例中打开命令提示符,键入以下命令,然后按提示操作。

    注意

    在 Ubuntu 中,在运行以下命令之前运行 apt-get update

    Copy
    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O

    Copy
    sudo python ./awslogs-agent-setup.py --region us-east-1

    注意

    您可以通过指定 us-east-1, us-west-1, us-west-2, ap-south-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, ap-northeast-1, eu-central-1, eu-west-1, or sa-east-1 区域来安装 CloudWatch Logs 代理。

    在设置期间,CloudWatch Logs 代理安装程序需要特定信息。在开始之前,您需要知道要监视的日志文件及其时间戳格式。您应准备好以下信息。

    Item 说明

    AWS 访问密钥 ID

    如果使用 IAM 角色,请按 Enter。否则,请输入您的 AWS 访问密钥 ID。

    AWS 秘密访问密钥

    如果使用 IAM 角色,请按 Enter。否则,请输入您的 AWS 秘密访问密钥。

    默认区域名称

    按 Enter。默认值为 us-east-1。您可以将它设置为 us-east-1, us-west-1, us-west-2, ap-south-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, ap-northeast-1, eu-central-1, eu-west-1, or sa-east-1。

    默认输出格式

    保留空白并按 Enter。

    要上传的日志文件的路径

    包含待发送日志数据的文件的位置。安装程序将为您提供路径建议。

    目标日志组名称

    日志组的名称。安装程序将为您提供日志组名称建议。

    目标日志流名称

    默认情况下,这是主机名称。安装程序将为您提供主机名称建议。

    时间戳格式

    指定在指定日志文件中使用的时间戳的格式。选择自定义可指定您自己的格式。

    初始位置

    数据的上传方式。设置为 start_of_file 将上传数据文件中的所有内容。设置为 end_of_file 将仅上传最近追加的数据。

    完成这些步骤后,安装程序会询问您是否需要配置另一个日志文件。对于每个日志文件,您都可以运行任意次此过程。如果没有其他要监控的日志文件,当安装程序提示设置其他日志时,请选择 N (否)。有关代理配置文件中的设置的更多信息,请参阅 CloudWatch Logs 代理参考

    注意

    不支持配置多个日志源将数据发送到单个日志流。

  3. 在代理运行一段时间后,可以在 CloudWatch 控制台看到新创建的日志组和日志流。

    要查看日志,请参阅 查看发送到 CloudWatch Logs 的日志数据

  4. 可选。如果以后需要编辑您的凭证,请在 /var/awslogs/etc/aws.conf 文件的 [default] 节中,指定需要查看日志数据的区域并添加您的凭证。

    Copy
    region = <REGION> aws_access_key_id = <YOUR ACCESS KEY> aws_secret_access_key = <YOUR SECRET KEY>

    注意

    如果您的实例是使用具有相应 CloudWatch Logs 使用权限的 IAM 角色或用户启动的,则可以选择在此添加凭证。