轮换日志 - Amazon EMR

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

轮换日志

Amazon EMR Serverless 可以轮换 Spark 应用程序日志和事件日志。日志轮换有助于解决长时间运行的作业生成大型日志文件,而占用磁盘空间的问题。轮换日志有助于节省磁盘存储空间,减少因磁盘空间不足而导致的作业失败次数。

默认情况下,日志轮换处于启用状态,且仅适用于 Spark 作业。

Spark 事件日志

注意

Spark 事件日志轮换适用于所有 Amazon EMR 发行版标签。

EMR Serverless 不是生成单个事件日志文件,而是定期轮换事件日志并删除旧的事件日志文件。轮换日志不会影响上传到 S3 存储桶的日志。

Spark 应用程序日志

注意

Spark 应用程序日志轮换适用于所有 Amazon EMR 发行版标签。

EMR Serverless 还会轮换驱动程序和执行程序的 Spark 应用程序日志,例如 stdoutstderr。您可以使用 Spark History Server 和 Live UI 链接在 Studio 中选择日志链接来访问最新的日志文件。日志文件是最新日志的截断版本。要查看旧的轮换日志,您必须在存储日志时指定 Amazon S3 位置。有关更多信息,请参阅使用 Amazon S3 存储桶的 EMR Serverless 日志记录

您可以在以下位置找到最新的日志文件。EMR Serverless 每 15 秒刷新一次文件。这些文件的大小从 0MB 到 128MB 不等。

<example-S3-logUri>/applications/<application-id>/jobs/<job-id>/SPARK_DRIVER/stderr.gz

以下位置包含旧的轮换文件。每个文件都是 128MB。

<example-S3-logUri>/applications/<application-id>/jobs/<job-id>/SPARK_DRIVER/archived/stderr_<index>.gz

同样的行为也适用于 Spark 执行程序。此更改仅适用于 S3 日志记录。日志轮换不会对上传到 Amazon 的日志流进行任何更改 CloudWatch。

EMR Serverless 7.1.0 及更高版本支持流处理和批处理作业重试。如果您在作业中启用了重试,EMR Serverless 会在此类作业的日志路径中添加前缀,以便更好地跟踪和区分日志。此路径包含所有轮换日志。

'/applications/<applicationId>/jobs/<jobId>/attempts/<attemptNumber>/'.