DOCS
インテグレーションガイド / LogicMonitor

本記事は米国PagerDuty社のサイトで公開されているインテグレーションガイドをそのまま日本語に翻訳したものです。日本語環境での動作を保証するわけではありません。原文はこちらを参照してください。
LogicMonitorはSaaSベースのパフォーマンス監視ソリューションであり、ビジネスを強化するためにIT Opsチームがインフラストラクチャ、アプリケーション、およびサービスを賢く監視できるようにします。LogicMonitorの監視機能とPagerDutyの高度なオンコールスケジューリング機能およびアラート機能を組み合わせることで、インフラストラクチャ内に問題が発生したらすぐに通知を受けることができるようになります。
PagerDutyでの設定
PagerDutyにIcingaサービスがない場合は作成する必要があります。
PagerDutyでの設定
-
ConfigurationメニューからServicesを選択します。
-
自分のServicesページで: 新しいサービスを作成する場合はServiceページで +Add New Service をクリックします。既存のサービスに追加する場合は、サービスの名前をクリックします。その後Integrationsタブをクリックし、+New Integrationボタンをクリックします。
-
Integration Typeメニューから追加したいアプリケーションを選択し、Integration Nameを入力します。新たにサービスを作成する場合は、General Settingsで、サービスのNameを入力します。次に、Incident Settingsで、新しいサービスのEscalation Policy (エスカレーションポリシー)、Notification Urgency(通知の緊急度)、Incident Behavior<(インシデントの動作)を指定します。
-
Add ServiceまたはAdd Integrationボタンをクリックして、インテグレーションを保存します。するとサービスのIntegrationsページにリダイレクトされます。
-
新しいインテグレーションのIntegration Emailをコピーします。
LogicMonitorでの設定
- Settings から Addを選択します。Integrationをクリックし、PagerDutyを選択します。
- Service Keyのところに、PagerDutyからコピーしたIntegration Keyを入力します。HTTP Deliveryセクションは、LogicMonitorのインシデントを作成、更新、または クローズするためにHTTP Postリクエストをどうにフォーマットして送信するかをコントロールします。HTTP Deliveryセクションでは何も編集する必要はありませんが、カスタマイズしたい場合は、下記の手順を参考することができます。 カスタマイズしない場合は、インテグレーションをSaveして、Escalation chainに追加すればOKです。 全部済ませたら、Alert rule にEscalation Chainを追加する必要があります。
HTTP Deliveryのカスタマイズ
現在のところ、LogicMonitorは次の4つの異なるHTTPリクエストを事前に設定します。
- 新しいアラート(Active)
- 承認されたアラート(Acknowledged)
- クリアされたアラート(Cleared)
- エスカレートされたアラート(Escalated)
リクエストごとに、HTTPリクエストをトリガするアラートステータスを選択できます。 リクエストは新しいアラート(ステータス:Active)を送り、さらにそのあとに追加でアラート確認(ステータス:Acknowledged)、クリア(ステータス:Cleared)、エスカレーション/デスカレーション(ステータス:Escalated)を送信できます。 各アラートステータスは、1つのリクエストのみ関連付けることができます。LogicMonitorはデフォルトで各アラートステータスに異なるリクエストを自動入力しますので、別のリクエストにアラートステータスを含めるオプションを表示するには、既定のリクエストを削除する必要があります。 HTTPリクエストを編集する際には、次の3つのフィールドが表示されます。
HTTP Method
PagerDutyインテグレーションのHTTP Method はPOSTに限定されています。
URL
HTTPリクエストを行うURL。 このフィールドは、入力した情報に基づいて自動入力されます。このインテグレーションのために、PagerDutyインテグレーションAPI end point(https://events.pagerduty.com/generic/2010-04-15/create_event.json) を利用することが必要です。
Alert Data
HTTP POSTリクエスト(PagerDutyインシデントの作成、更新、終了に使用)で送信される、カスタム形式のアラートデータ。 このフィールドは自動的に設定されます。 必要に応じて、トークンを使用してアラートデータフィールドをカスタマイズできます。 次のtokenを使用できます。
- datasource alert message tokens
- eventsource alert message tokens
- batchjob alert message tokens
## ADMIN ##
:アラートがエスカレートされたユーザー
##MESSAGE##
:任意のデータポイント固有のアラートテンプレートを使用して、メッセージをレンダリングしたテキスト
## ALERTID ##
:電子メールやその他のアラートメッセージで使用されているアラートに関連付けられたLogicMonitor ID>
## ALERTTYPE ##
:トリガされているアラートのタイプ(つまり、データソース、クラスタ、イベント、バッチジョブ、サービス)
## ALERTSTATUS ##
:これがアクティブなアラートであるか、アラートでクリアされたメッセージであるかを示します。設定可能な値はactiveまたはclearedです。アラートが解除されたときには常に通知を受け取りますが、アラートクリア通知であることを示す通知は表示されません。(アクティブアラート通知と逆)
## ALERTSTATUS ##
ステータスまたは電子メールの本文フィールドにTokenが含まれます。
## EXTERNALTICKETID ##
:PagerDutyインシデントID
Include an ID provided in HTTP response when updating alert status(アラートステータスを更新するときにHTTP応答で提供されるIDを含める)
LogicMonitorで、新しいアラートに関連付けられたHTTPリクエストに対する応答で返されたPagerDutyインシデントIDを検索し、アラート確認、クリア、エスカレーション/デスカレーレーションなどのリクエストでこのIDを使用したい場合は、このオプションをオンにします。このオプションは既定ではオンになっています。
HTTP応答フォーマット
LogicMonitorが応答で提供されるIDを使用する場合は、応答が入る形式を選択します。
LogicMonitorとPagerDutyが通信していることを確認する
インテグレーションを設定してアラートをトリガすると、PagerDuty内でインシデントが発生したことがわかります。 アラートがクリアされると、PagerDutyのインシデントも解決されます。
よくある質問
LogicMonitorインシデントは自動的に解決されますか?
既定のHTTPリクエストでは、LogicMonitorでアラートがクリアされるとすぐにPagerDuty のインシデントも解決されます。 インシデントがPagerDuty内で自動的に解決されない場合は、LogicMonitor実装でアラートクリアメッセージが表示されないようにしてください。
LogicMonitorを複数のPagerDutyサービスに結びつけるように設定するにはどうすればよいですか?
PagerDuty内に2つ目のLogicMonitorサービスを設定したら、LogicMonitorで新しい外部アラートを作成します。 上記のLogicMonitorでの設定セクションの手順を繰り返します。この時は、インシデントをトリガするPagerDutyサービスのPagerDuty Service Integration Keyを使用します。
インストールがうまくいかない場合は、 サポートチームにお問い合わせください。