使用 CLI 查看 AWS Glue 作业日志

View AWS Glue job logs with CLI

AWS CLI 非常适合管理 AWS Glue 作业。但是,如果工作失败,我可能看不到比以下内容更有用的东西:

            "JobRunState": "FAILED",
            "ErrorMessage": "User application exited with status 10",

而且我必须翻阅堆积如山的 CloudWatch 日志,希望能找到有用的东西。如果有任何关于通过 CLI 获取所有日志的想法,我将不胜感激,这样我就可以使用 grep.

之类的东西

自己在寻找答案时发现了这个问题。以下命令获取最后一个作业的日志,

JOB_ID=$(aws glue get-job-runs --job-name $JOB_NAME --query 'JobRuns[0].Id' --output text)
aws logs get-log-events --log-group-name /aws-glue/jobs/output --log-stream-name $JOB_ID

其中 $JOB_NAME 是您的 Glue 作业的名称。您还可以使用日志组名称 /aws-glue/jobs/error 查看写入 stderr 的消息,尽管我发现 /output 更有用。