システム障害が発生した際に、最近構築したシステムだとSlackなどに転送して担当者が検知しやすいようにリーチしていくような考慮が入っていたりますが、ほとんどのシステムはメールによる通知がほとんだと思います。
他のメールと混じってしまったり、自分のスマホでメールの内容が確認できなかったりと検知が遅くなってしまうことが多々あるのではないでしょうか。
そんな状況でMicrosoft Flowを使えばメールの通知をトリガーに他のサービスに転送することによって利用者により近い場所で通知することができます。
そんなサービスを今回作成したいと思います。
#通知先を決定する
通知先は人によってそれぞれだと思います。その利用者が普段どのサービスを使っているのかが重要で利用者が普段使っているサービスに通知するのが一番よいでしょう。
今回は2つの方法で通知をしてみたいと思います。
一つ目はMicrosoft Flow上に通知をしてスマホ経由で確認する方法、
二つ目はSlackに通知をしてメッセージとして通知する方法です。
#フローの作成
では、フローの作成に進みたいと思います。
最初のフローはOutlookへのメールの通知からとなります。すべてのメールの通知をトリガーにするわけにはいかないので対象のメッセージを絞ります。
絞り方は色々と方法はありますが、今回は件名に特定のキーワードが入っているときのみにトリガーが起動するようにしたいので、以下のように「件名フィルター」に該当キーワードを入れておきます。
次にどこへ通知させるかの設定となります。
まず最初は自分のスマホ(Notification)へ通知するようにします。通常障害発生時のメールにはその内容が記載されていることがほとんどですので、その内容をそのまま表示できるようにメールの本文を設定します。
次にSlackへの設定ですが、これも同じような考え方で本文を指定したチャネル名として表示するように設定します。
これで設定としては完了になります。
#フローの実行
まず、システム障害が発生したと想定して、自分宛に障害発生メールを送付します。
そうすると、自分のスマホ(Microsoft Flowを事前にインストール必要)とSlackに以下のようなメッセージが表示されます。
[Microsoft Flow]
[Slack]
そんなに難しくありませんね。
#まとめ
このご時世、利用者への情報通知方法というのは本当に山ほどあり、利用者のライフスタイルによって異なるのだと思います。その際にケース毎に仕掛けをつくっていてはキリがありませんので、このように基本としてメール通知にしてしまい、そこからの通知のディスパッチを利用者が決めていくという、ある程度自由度を持った設計が合うのかなと思います。