View a markdown version of this page

步骤 4:验证和故障排除 - AWS Batch

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

步骤 4:验证和故障排除

提交触发实例扩展的任务后,请验证日志文件是否显示在 Amazon S3 存储桶中。

提示

要在全面部署之前测试日志收集,请在计算环境中minvCpus将其设置为非零值。这迫 AWS Batch 使在不等待提交作业的情况下至少扩展一个实例。测试minvCpus后将其设置为零,以避免不必要的成本。

AWS Console
  1. 打开 Amazon S3 控制台,网址为 https://console.aws.amazon.com/s3/

  2. 打开您的存储桶并导航到前ecs-logs/缀。

  3. 确认已显示以实例 ID 命名的文件夹。每个文件夹都包含每个日志源的子目录。

AWS CLI

运行以下命令列出上传的日志对象:

aws s3 ls s3://host-level-logs-bucket/ecs-logs/ --recursive

如果该命令返回按实例 ID、日期和源标签组织的对象,则日志收集工作正常。

如果未显示日志,请使用 SSH 或 SSM 会话管理器连接到实例以调试Fluent Bit代理。使用检查服务状态systemctl status fluent-bit。查看/var/log/cloud-init-output.log以确认user-data脚本成功运行。

竞价型实例和短期实例的注意事项

当您使用经常缩放到零的竞价型实例或短期计算环境时,请考虑进行以下调整以避免丢失日志数据:

  • Spot 回收风险 — 降低upload_timeouttotal_file_sizefluent-bit.conf以更频繁地刷新日志数据。这可以缩短回收实例后可能丢失的数据窗口。

  • Short-lived 实例 — 当任务之间 AWS Batch 缩放到零时,请降低Flush间隔,upload_timeout以便在实例终止之前上传收集的数据。

  • Amazon S3 生命周期规则 — 我们建议将 Amazon S3 生命周期规则配置为过期或将旧日志对象过渡到成本较低的存储类别。这可以防止无限的存储增长。