ユーザーとして Opsgenie の利用を開始する
プロフィールの設定、Opsgenie からの通知の取得、オンコール スケジュールの表示に関するすべての方法を説明します。
Opsgenie の Zenoss 統合プラグインは、Opsgenie の全機能を活用して Zenoss との双方向統合を提供します。統合では、Opsgenie の Zenoss 固有の実行可能ファイルと OEC ユーティリティを活用して、アラートを自動で作成して Zenoss と Opsgenie の間でアラート ステータスを同期します。
以下の手順では、Opsgenie の Zenoss インテグレーション プラグインを使用して、Opsgenie と Zenoss を統合する方法を説明します。ご使用の Linux ディストリビューションと Zenoss の設定によっては、これらの指示に若干の変更が必要になる場合があることに注意してください。
提供されるパッケージは、以下のシステムをサポートしています。
Red Hat ベースの Linux ディストリビューション
Debian ベースの Linux ディストリビューション
OEC の最新バージョンをダウンロードする
Zenoss パッケージの最新バージョンをダウンロードするには、oec-scripts リポジトリの readme ファイルを使用してください。
Red Hat ベースのディストリビューションの場合
次のコマンドを実行します。 rpm -i opsgenie-zenoss-<your_version>.rpm
アップグレード中に、rpm パッケージは既存の設定を上書きしません。これによって、新しい既定の設定ファイルが opsgenie-integration.conf.rpmnew として保存されます。rpm アップグレード設定ファイルの処理の詳細については、こちらをご参照ください。
バージョン 201X-XX-XX から 2.X.X に更新するには、--force パラメーターを追加します。
例: rpm -U --force opsgenie-integration-<your_version>.rpm
更新する前に、設定ファイルをバックアップすることをお勧めします。
Debian ベースのディストリビューションの場合
次のコマンドを実行します。 dpkg -i opsgenie-zenoss-<your_version>.deb
この統合はチーム ダッシュボードから追加可能
Opsgenie の Free または Essentials の各プランを使用している、または Jira Service Management の Standard プランで Opsgenie を使用している場合、このプランでは [設定] の [統合] ページが利用できないため、この統合はチーム ダッシュボードからのみ追加できます。
統合をチーム ダッシュボードから追加すると、そのチーム統合の所有者になります。Opsgenie では、この統合を通じて受信したアラートはそのチームのみに割り当てられます。
そのためには、次の手順に従います。
Teams からチーム ダッシュボードに移動します。
[統合] > [統合を追加] の順に選択します。
残りの手順に従って統合を完了します。
[設定] > [統合] の順に移動します。Zenoss を検索して [追加] を選択します。
[応答者] フィールドによって Sentry アラートの通知先を指定します。入力し始めると、オートコンプリートの候補が表示されます。
API キーをコピーします。
[Save Integration (統合の保存)] を選択します。
プラグインは golang-executable ファイル (send2opsgenie としてプラグインに含まれる) を使用して、Opsgenie でアラートを作成、承認、クローズします。send2opsgenie を動作させるには、いくつかの設定を行う必要があります。以下の表は、パラメーター、パラメーターが配置されている場所、およびそれらが必須であるかどうかを示しています。
設定パラメーター | 説明 | 入力必須 | 場所 |
---|---|---|---|
API キー | 上記で作成した Zenoss インテグレーションから API キーをコピーします。send2opsgenie はこのキーを使用して Opsgenie への認証を行います。API キーは、アラートの処理に使用する必要がある適切なインテグレーション構成を識別するためにも用いられます。 | はい |
|
ベース URL | Opsgenie を別のドメインから使っている場合 (例: EU、サンドボックス) は、この設定をアップデートする必要があります。Opsgenie Zenoss インテグレーション、Zenoss の [詳細設定] ページ。 |
|
|
zenoss.command_url | send2opsgenie で Zenoss から詳細なイベントデータを取得する URL。 | 任意 |
|
zenoss.user | Zenoss Web サーバーを認証するための資格情報 | 任意 |
|
zenoss.password | Zenoss Web サーバーを認証するための資格情報 | 任意 |
|
responders | responders フィールドは、Zenoss アラートを通知する必要がある対応者を指定するために使用されます。このフィールドは、既定の対応者フィールド値を設定するために使用されます。Opsgenie Zenoss インテグレーションの [詳細設定] ページで、異なるチームに異なるアラートをルーティングするように変更できます。Opsgenie から通知されるスケジュール。インテグレーションで受信者を設定していない場合、このフィールドは必須です。 | 任意 |
|
tags | [Tags] フィールドは、Opsgenie で作成されたアラートのタグを指定するために使用されます。 | 任意 |
|
logPath | ログ ファイルの完全なパスを指定します (既定値は /var/log/opsgenie/send2opsgenie.log)。 | 任意 |
|
zenoss2opsgenie.http.proxy.enabled | zenoss2opsgenie.http.proxy.enabled フィールドは、外部プロキシの設定を有効または無効にします。既定値は false です。 | 任意 |
|
zenoss2opsgenie.http.proxy.host | これは、プロキシのホストです。 | 任意 |
|
zenoss2opsgenie.http.proxy.port | プロキシのポートです。 | 任意 |
|
zenoss2opsgenie.http.proxy.scheme | これは、プロキシ接続プロトコルです。プロキシ サーバーによって、http または https になる場合があります。既定値は http です。 | 任意 |
|
zenoss2opsgenie.http.proxy.username | プロキシ認証ユーザー名です。 | 任意 |
|
zenoss2opsgenie.http.proxy.password | これは、プロキシ認証パスワードです。 | 任意 |
|
golang 実行可能ファイルを設定するには、次の 3 つの方法があります。
conf ファイルからの設定: /home/opsgenie/oec/conf/opsgenie-integration.conf ファイルから設定します。conf ファイルから設定すると、スクリプトで行われた設定が上書きされます。
Golang フラグを使用して設定: Zenoss で作成された通知のコマンドにフラグを入力して設定します。これについては、「Zenoss でのトリガーの設定」で説明されています。apiKey には -apiKey フラグを使用します。
追加のカスタム引数を送信するには、フラグの後に、customArgName1 customArgValue1 customArgName2 customArgValue2 のように追加します。
{{_payload.customArgName}} を入力フィールドの必要な場所に追加することで、カスタム引数を解析します。
加工前のパラメーターの使用に関する詳細については、動的フィールドのドキュメントをご確認ください。
3. スクリプトからの設定: apiKey send2opsgenie.go スクリプトを設定します。このオプションを使用するには、スクリプトを再構築し、新しい実行可能ファイルを /home/opsgenie/oec/zenoss ディレクトリに配置します。zenoss2opsgenie.go の場所と go スクリプトの構築方法については、「ソース」セクションを参照してください。
通知を作成する前に、次のことを行います。
ナビゲーション メニューから [Events (イベント)] > [Triggers (トリガー)] を選択します。
Opsgenie という名前のトリガーを作成します。
トリガーを作成したら、次の手順に従います。
ナビゲーション メニューから [Events (イベント)] > [Triggers (トリガー)] を選択します。
左側のパネルから [Notifications (通知)] を選択します。
新しい通知を作成します。
4. 以前に作成した通知を選択して、[編集] をクリックします。
5. [通知] タブで、通知を有効にして [Send Clear (送信を選択解除)] をオンにし、トリガー リストから「opsgenie」という名前のトリガーを選択して [追加] をクリックします。
6. [Content (コンテンツ)] タブで、[Command (コマンド)] フィールドと [Clear Command (コマンドをクリア)] フィールドに以下を入力します。オプションの -eventState=close を [Clear Command (コマンドをクリア)] に追加すると、send2opsgenie 実行可能ファイルは Zenoss からイベントの詳細を取得しようとせず、Opsgenie でイベントのアラートを直接クローズします。
/usr/bin/zenoss2opsgenie -evid=${evt/evid}
7. [Subscribers (サブスクライバー)] タブで、サブスクライバーを選択し、[SUBMIT (送信)] をクリックします。
Opsgenie の OEC と Zenoss スクリプトを使用して、Zenoss でアラートをアップデートします。これによって、独自のスクリプトや機能をデプロイして提供された機能を変更し、カスタマイズしたアクションを Zenoss 上で実行できます。
Zenoss でアクションを実行できるようにするには、OEC で設定ファイルから設定パラメーターを取得します。設定ファイルは、/home/opsgenie/oec/conf/config.json にあります。
設定パラメーター |
| 場所 |
---|---|---|
command_url | アラートが承認されたときやクローズされたときなどに Zenoss イベントをアップデートするための URL。 | /home/opsgenie/oec/conf/config.json |
ユーザー | Zenoss Web サーバーを認証するための資格情報。 | /home/opsgenie/oec/conf/config.json |
パスワード | Zenoss Web サーバーを認証するための資格情報。 | /home/opsgenie/oec/conf/config.json |
また、ダウンロードしたパッケージには、/usr/local/bin にある OEC ユーティリティと、/home/opsgenie/oec/scripts にある OEC によって実行する必要があるスクリプトが含まれています。OEC の設定が完了したら、OEC を実行する必要があります。OEC を実行する方法に関する詳細については、OEC の実行のドキュメントをご参照ください。
Zenoss インテグレーション パッケージは SSL v1.0 をサポートしていません。Zenoss サーバーで SSL v1.0 を使用している場合は、SSL サーバーをアップグレードすることをお勧めします。
インテグレーションをうまく機能させることができない場合は、問題が以下に記載されていないかどうかを確認し、当社のアドバイスに従ってください。
シェルから次のテスト コマンドを実行します。Opsgenie でアラートが作成されているかどうかを確認します。
/home/opsgenie/oec/opsgenie-zenoss/send2opsgenie -test
"Trace/breakpoint trap (トレース/ブレークポイント トラップ)" エラーが発生した場合、send2opsgenie プラグインがサーバー ディストリビューションと互換性がないことを意味します。以下の「send2opsgenie のソースと再コンパイル」セクションに従い、特定のサーバー環境に従って send2opsgenie.go を再構築します。
Opsgenie でアラートが作成された場合: インテグレーションが正しくインストールされていることを意味します。Zenoss が Opsgenie のアラートの連絡先に通知していないことが問題である可能性があります。Zenoss のアラート通知ログを確認してください。
そうでない場合: /var/log/opsgenie/send2opsgenie.log のログを確認してください。ログ ファイルで以下のエラーがないか探します。
「RestException[Could not authenticate. (認証できませんでした。)]」がログに表示されたら、Opsgenie が API キーを識別できなかったということです。上記の「Zenoss での Opsgenie プラグイン設定」で説明されているように、API キーが正しく設定されているかを確認します。
問題がはっきりしない場合は、プラグインのログ レベルをデバッグに設定してもう一度お試しいただき、お問い合わせフォームでログを送信してください。
/var/log/opsgenie/send2opsgenie.log ファイル、またはログがない場合は、以下を確認してください。
まず、Zenoss ユーザーが /var/log/opsgenie ディレクトリへの書き込み権限を持っていることを確認します。インストール パッケージによって自動で実行されます。問題が発生した場合は、chown -R zenoss:opsgenie /var/log/opsgenie を実行します。
次に、/opt/zenoss/log/zeneventd.log で Zabbix サーバーのログを確認します。zenoss2opsgenie に関するエラー ログがあるかどうかを確認し、それらを添えてお問い合わせください。
zenoss2opsgenie プラグインのログ レベルを DEBUG に設定:
zenoss2opsgenie.logger=warning の行を zenoss2opsgenie.logger=debug に変更します (/etc/opsgenie/conf/opsgenie-integration.conf ファイル内)。
まず、アラート ログを確認します。
"Posted [Acknowledge] action to Zenoss.." がログにない場合、Opsgenie が承認アクションを Zenoss に送信しなかったことを意味します。インテグレーション設定を確認してください。アラート アクションと一致していない可能性があります。
"Posted [Acknowledge] action to Zenoss.." のみがログに記録され、それ以降関連ログがない場合、OEC に接続の問題が発生している可能性があります。ログを確認してください。
rpm パッケージのインストール中にパッケージが廃止されたことを示すエラーが表示された場合は、代わりに "rpm -i opsgenie-zenoss-1.0.4-rpm-x86-64.rpm --nodeps" を使用する必要があります。
"is already installed (インストール済み)" エラーが表示された場合は、代わりに "rpm -i opsgenie-zenoss-1.0.4-rpm-x86-64.rpm --force" を使用してください。
実行可能な send2opsgenie のソースは /usr/bin/ に、send2opsgenie.go は/etc/opsgenie/ にあり、GitHub Opsgenie Integration リポジトリでも利用できます。実行可能ファイルの動作を変更するには、send2opsgenie.go を編集して次を使用して構築します。
go build send2opsgenie.go
go のインストールについては、http://golang.org/doc/install を参照してください。プラグインの実行ファイルは linux/386 システム用に構築されていることに注意してください。
この内容はお役に立ちましたか?