Можно ли как-нибудь отправить по электронной почте статус задания Google DataProc, если оно не удалось? - PullRequest
0 голосов
/ 21 февраля 2019

Взаимодействуя с Google Composer и DataProc, меня попросили найти способ получения сведений о неудачных заданиях для пользователей Ops с минимальным количеством кликов.Я нашел этот экран на странице заданий DataProc:

enter image description here

И мне было интересно, есть ли способ отправить содержимое (включая ссылку наполный файл журнала) по электронной почте в случае сбоя работы?

Ответы [ 2 ]

0 голосов
/ 02 марта 2019

Вы можете написать свою собственную функцию электронной почты при обнаружении ошибки.Вот мой пример нашего слабого сообщения, когда работа не удалась.

 private void runCommand(String commandName,
                        String[] commandArgs) {

    try (CommandContext commandContext = createCommandContext()) {
        // find and run the command
        SparkCommand command = commandContext.findCommand(commandName);

        checkSparkResource(command.context.sc());
        command.main(commandArgs);

    } catch (Exception e) {
        logger.error(e.getMessage(), e);

        String message = "Something wrong~";
        String title = "Run Job on Dataproc:" + commandName + " Fail";
        String text = e.getMessage();

        SlackNotifier.instance()
                     .error(message, title, text);
    }
}
0 голосов
/ 26 февраля 2019

Вам необходимо установить email_on_failure = True аргумент в вашем DataProcSparkOperator.

...