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
更有用。