フレクトのクラウドblog re:newal

http://blog.flect.co.jp/cloud/からさらに引っ越しています

MuleSoft Alertについて

こんにちは。CI事業部の川瀬です。

今回は運用で役立つAlert通知について説明します。Alertと言えば、キャパシティ管理でCPUの利用率が70%を超えたら通知、5分回にXX回以上のエラーが発生したら通知ということを思い浮かべる人が多いと思います。勿論、MuleSoftのAPI Platformでもいろいろな通知方法が提供されています。このいろいろという所が実は悩ましいです。

では、実際に機能を見ていきましょう。

Runtime Mangerによる通知
ここでは、以下の通知が提供されています。

  • Deployment failed (デプロイに失敗しました)

  • Deployment success (デプロイメントに成功しました)

  • Secure data gateway connected (ソースデータゲートウェイが接続されました)

  • Secure data gateway disconnected (ソースデータゲートウェイが切断されました)

  • Worker not responding (ワーカーが応答していません)

実際の設定画面はこんな感じです。

f:id:k2-flect:20210417202129j:plain:h426:w298

docs.mulesoft.com

API Mangerによる通知

  • CPU Utilization (CPU 使用率)

  • Memory Utilization (メモリ使用量)

  • Thread Count (スレッド数)

  • Message count (メッセージ数)

  • Message error count (メッセージエラー数)

  • Message response time (メッセージ応答時間)

実際の設定画面はこんな感じです。
f:id:k2-flect:20210417203332j:plain:h267:w321

docs.mulesoft.com

Monitoringによる通知

  • API を管理する 1 つ以上のポリシーで違反が発生する。

  • 要求数
    ユーザが指定された期間で許可されている回数を超えて API にアクセスを要求する。

  • 応答コード
    API が要求を受信したときに、400、401、403、404、408、500、502、503 のいずれかの HTTP コードを返す。

  • Response Time (応答時間)
    API応答時間が指定された期間を超えている

実際の設定画面はこんな感じです。
f:id:k2-flect:20210417203636j:plain:h466:w305

docs.mulesoft.com

Monitoringのカスタムダッシュボードでの通知
カスタムダッシュボードで設定したメトリクスに応じて設定できる項目が変わります。 実際の設定画面はこんな感じです。
f:id:k2-flect:20210417203853j:plain:h377:w726

MonitoringのFunction Monitoringでの通知
期待するHTTPレスポンスを定期的に監視することができます。例えば、死活監視を設定することができます。 実際の設定画面はこんな感じです。
f:id:k2-flect:20210417205236j:plain:h387:w558

Runtime ManagerによるAlert通知はどのライセンス形態でも使用できますが、その他のAlert通知はライセンス形態により使用できない場合があるので注意してください。

いろいろな個所でAlert通知ができるので、最初のうちは混乱してしまうかもしれませんが、ライセンスに応じでできることがどんどんできることが増えていくと考えればよいです。
ここでクイズです。Function Monitoringで死活監視ができますが、Runtime ManagerのWorker not respondingを使用しても死活監視ができます。どちらを使えばいいでしょうか?
即時性を求めるならFunction Monitoringです。Runtime ManagerのWorker not respondingによる通知は、若干、時間がかかります。ただし、Function Monitoringではバッチ系のアプリに対し死活監視ができません。その場合は、Runtime ManagerのWorker not respondingを使うしかありません。