Google App ScriptからSlack通知 with 例外処理


Google App ScriptからSlackへ通知するコードを過去に書いていたが,例外処理をサボったせいで失敗に気づかなかった.そこで,例外が発生したときにメールで通知を受け取れるように修正をした.

const POST_URL = 'https://hooks.slack.com/services/XXXXXXXX/YYYYYYY/ZZZZZZZZZZZZZZZZZZZ';
const PAYLOADS = JSON.stringify({
    "attachments": [
        {
            "blocks": [
                {
                    "type": "section",
                    "text": {
                        "type": "mrkdwn",
                        "text": "*YOUR_MESSAGE*"
                    }
                }
            ]
        }
    ]
});
const POST_OPTIONS = {
    "method": "post",
    "contentType": "application/json",
    "payload": PAYLOADS,
};

try {
    Logger.log("Call Salck API");
    UrlFetchApp.fetch(POST_URL, POST_OPTIONS);
} catch (e) {
    Logger.log("Exception: " + e);
    const mailDest = "[email protected]";
    const mailBody = "お疲れさまです.\n次のエラーが発生しました.\n" + e;
    GmailApp.sendEmail(mailDest, "Slack通知に失敗しました.", mailBody);
}

参考URL