Как отправить уведомление об ошибке, если задание aws glue выполняется дольше порогового времени

#amazon-web-services

Вопрос:

У меня есть сценарий для реализации задачи уведомления sns, когда задание склеивания aws выполняется дольше, чем ожидалось. Как я могу этого достичь

Ответ №1:

События CloudWatch Примеры событий из AWS Glue показывают событие из AWS Glue, называемое Тайм-ау:

 {
    "version":"0",
    "id":"abcdef00-1234-5678-9abc-def012345678",
    "detail-type":"Glue Job State Change",
    "source":"aws.glue",
    "account":"123456789012",
    "time":"2017-11-20T20:22:06Z",
    "region":"us-east-1",
    "resources":[],
    "detail":{
        "jobName":"MyJob",
        "severity":"WARN",
        "state":"TIMEOUT",
        "jobRunId":"jr_abc0123456789abcdef0123456789abcdef0123456789abcdef0123456789def",
        "message":"Job run timed out"
    }
}
 

От AWS Glue теперь поддерживает значения времени ожидания для заданий ETL:

AWS Glue теперь позволяет устанавливать значение тайм-аута для заданий извлечения, преобразования и загрузки (ETL) в качестве защиты от нерегулярных заданий… По достижении указанного лимита времени ожидания Glue завершит выполнение задания ETL, прекратит выставление счетов за задание и отправит уведомление о времени ожидания задания в Amazon CloudWatch.

Однако, если вы просто хотите получить уведомление по истечении определенного периода, а не завершить работу, этот вариант не подходит. Для этого вам нужно будет написать свою собственную систему для мониторинга продолжительности, возможно, вызванную началом задания.

См. Также: Автоматизация AWS Glue с помощью событий CloudWatch