Azure Functions のポータルのログを見るための仕組みっぽいモニターを開いたら Application Insights の使用をお勧めされたので使ってみます。
Azure Functions の作成時に Application Insights の ON/OFF が指定できるので、そこで指定するのが一番楽です。ですが、作ってしまったよ!というときでも後から追加できるのでやってみましょう。
Application Insights の作成
日本のリージョンは選択できないので適当なところに作ります。
作ったらブレードの概要のところにインストルメーテンション キーが表示されるので、それを控えておきます。
Functions へキーの設定
Function App を開いてアプリケーション設定を開きます。
アプリ設定にAPPINSIGHTS_INSTRUMENTATIONKEY
を追加しましょう。値は先ほど取得したインストルメーテンション キーの値です。
これで Application Insights との連携は完了です。適当に関数をガンガン呼び出すスクリプトを走らせて Application Insights を覗くと動いてるのが確認できます。因みに、ちゃんと Function App が構成できてると、こんな風に構成済みの機能に Application Insights が追加されます。
確認
開くと以下のような感じの画面になります。動いてる感が出てますね。
メトリックス エクスプローラーを開いて適当にグラフを追加しましょう。HTTP要求実行時間とか。(最初から追加されてたっけ…?)
グラフを選択するといい感じに結果が表示されます。
下にスクロールすると、個別のログが出てきます。
個別のログを選ぶと詳細が出ます。
このトレース ステートメントがログに記録された要求をぽちっとすると要求の詳細が見えます。
もう1段掘り下げると、この要求のすべてのトレースというのが出てきます。こいつをクリックすると同じ要求内のログが出てきます。
いい感じ。
まとめ
ということで Application Insights を ON にしておくと色々はかどりそうです。アラート出すようにしたり、ログにクエリかけたりできるっぽい(勉強しなきゃ…)のでガンガン使いましょう。