かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Azure Functions で Application Insights のアラートを使ってみよう

先日 Azure Functions で Application Insights の連携について書きました。 ということで今日はアラート使ってみようと思います。

Application Insights でアラート

アラートとかAlertとかドキュメントでは書かれていますがポータル上では警告です。はい。 Application Insights のブレードで警告を開いてプラスボタンでルールを追加します。ルールでは、関数の応答時間の平均などを閾値に指定できます。

例えばTimerFuncという関数を作ってみたのですが、こういう感じのルールで平均の応答時間が5000ms以上の時にメール通知とかっていう設定が出来ます。Webhookとかもキック出来るみたいですね。

f:id:okazuki:20170821215849p:plain

そして、TimerFuncのコードをこうしてみました。

module.exports = function (context, myTimer) {
    var timeStamp = new Date().toISOString();
    
    if(myTimer.isPastDue)
    {
        context.log('JavaScript is running late!');
    }
    context.log('JavaScript timer trigger function ran!', timeStamp);   
    setTimeout(function() {
        context.done();
    }, 6000);
};

これで確実にアラート出ますね!! 暫く待ってるとメールが来た!!

f:id:okazuki:20170821220436p:plain

ポータル上でも何かあったことが確認できます。

f:id:okazuki:20170821220543p:plain

えっ、ナニコレめっちゃいいんだけど。SIer時代に知っておくんだった…。