

# 查看 Amazon ECS 容器代理日志
<a name="logs"></a>

Amazon ECS 将日志存储在容器实例的 `/var/log/ecs` 文件夹中。Amazon ECS 容器代理和控制容器实例上的代理状态（启动/停止）的 `ecs-init` 服务提供了日志。您可以通过 SSH 连接到容器实例来查看这些日志文件。

**注意**  
如果您不确定如何收集容器实例上的所有日志，则可使用 Amazon ECS 日志收集器。有关更多信息，请参阅 [使用 Amazon ECS 日志收集器收集容器日志](ecs-logs-collector.md)。

## Linux 操作系统
<a name="logs-linux"></a>

`ecs-init` 过程将日志存储在 `/var/log/ecs/ecs-init.log` 中。

`ecs-init.log` 文件包含有关容器代理生命周期管理、配置和引导的信息。

您可以使用以下命令查看日志文件。

```
cat /var/log/ecs/ecs-init.log
```

输出：

```
2018-02-16T18:13:54Z [INFO] pre-start
2018-02-16T18:13:56Z [INFO] start
2018-02-16T18:13:56Z [INFO] No existing agent container to remove.
2018-02-16T18:13:56Z [INFO] Starting Amazon Elastic Container Service Agent
```

## Windows 操作系统
<a name="logs-windows"></a>

您可以使用适用于 Windows 的 Amazon ECS 日志收集器。有关更多信息，请参阅 Github 上的 [Amazon ECS Logs Collector For Windows](https://github.com/awslabs/aws-ecs-logs-collector-for-windows?tab=readme-ov-file#aws-ecs-logs-collector-for-windows)。

1. 连接到您的实例。

1. 打开 PowerShell，然后以管理员权限运行以下命令。这些命令会下载脚本并收集日志。

   ```
   Invoke-WebRequest -OutFile ecs-logs-collector.ps1 https://raw.githubusercontent.com/awslabs/aws-ecs-logs-collector-for-windows/master/ecs-logs-collector.ps1
   .\ecs-logs-collector.ps1
   ```

您可以为 Amazon ECS 代理和 Docker 进程守护程序开启调试日志记录。使用此选项，脚本将可以在开启调试模式之前收集日志。该脚本将重新启动 Docker 进程守护程序和 Amazon ECS 代理，然后终止该实例上运行的所有容器。请首先清空容器实例并将所有重要任务移至其他容器实例，然后再运行以下命令。

运行以下命令以开启日志记录。

```
.\ecs-logs-collector.ps1 -RunMode debug
```