HipChatルームへのURLアラートの送信

URLアラートを1つまたは複数のHipChatルームに送信します。

HipChat API v2を使用して、URLアラートを1つまたは複数のHipChatルームに送信します。HipChatイベント・プラグインは、権限管理トークンで提供されたIDを使用して、メッセージ・フィールドでカスタマイズされたイベント・メッセージをHipChatルームに送信します。

Config_locationhipchat_posturl.confファイルのインスタンスが複数存在する場合は、イベント・プラグインのインスタンスも複数になります。HipChat構成ファイルには任意の名前を付けることができます。ただし、.confファイル拡張子を持ち、有効なイベント・プラグイン識別子[posturl]を含み、event-pluginsディレクトリーの場所にある必要があります。構成ファイルはすべて読み込まれるため、hipchat_posturl1.confhipchat_posturl2.confのようにファイル名を区別してください。プラグイン・インスタンスが複数あると、開発および実稼働クラスターのさまざまなHipChatルームに対してアラートを柔軟に設定できます。すべてのOpsCenterイベント・プラグインで、複数の構成ファイルと、その結果の複数のプラグイン・インスタンスがサポートされます。

始める前に

  1. HipChat APIに対して通知の送信(スコープ)権限を持つ権限管理トークンを作成します。
  2. 適切なHipChatユーザー・プロファイルの通知が有効になっていることを確認します。
  3. アラートの送信先のHipChatルームのroom_idを取得します。組織のルームIDのリストを取得するには、ルームの表示スコープを持つ権限管理トークンを使用してエンドポイント(https://api.hipchat.com/v2/room?max-results=1000&auth_token=your_auth_token)を検索します。

手順

  1. ターミナルで、編集するhipchat_posturl.confを開きます。
  2. [posturl]セクションで、enabled=1を設定します。
  3. すべてのレベルとクラスターのアラートが呼び出されるのを避けるには、アラート構成が実行されるレベルとクラスターを指定します。
  4. HipChat APIにアクセスするためのauth_token(APIキー)を入力します。
  5. 送信先のHipChatルームのIDをroom_idオプションに入力します。
  6. hipchat_posturl.confを保存し、OpsCenterデーモンを再起動します。
  7. 予期したHipChatルームがOpsCenterの起動の通知を受信していることを確認します。

hipchat_posturl.confの例:

[posturl] 
enabled=1

# levels can be comma-delimited list of any of the following:
# DEBUG,INFO,WARN,ERROR,CRITICAL,ALERT
# If left empty, all levels will be posted
levels=CRITICAL,ALERT

# clusters is a comma-delimited list of cluster names for which
# this alert config will be eligible to run.
# If left empty, this alert will be called for events on all clusters
clusters=prod1,prod2,prod3

# You can learn more about how to get authentication tokens at
# https://www.hipchat.com/docs/apiv2/auth
auth_token=your_hipchat_auth_token

# You can find a list of room IDs for your organization at
# https://api.hipchat.com/v2/room?max-results=1000&auth_token=<your auth token>
room_id=123

# You may use tokens found within the default event data for or in
# values. For example, some available keys are:
# cluster, time, level_str, message, target_node, event_source, success, api_source_ip, user, source_node
# Keys must be encapsulated in {brackets}.
message=<b>{level_string} from {cluster}</b>:  {message}

# Background color of the message posted in the HipChat room. 
# Valid values: yellow (default), green, red, purple, gray, random.
color=purple

# Determines how the message is treated by HipChat applications
#   html:
#     Message is rendered as HTML and receives no special treatment.
#     Must be valid HTML and entities must be escaped (e.g.: '&amp;' instead of
            '&').
#     May contain basic tags: a, b, i, strong, em, br, img, pre, code, lists,
            tables.
#   text:
#     Message is treated just like a message sent by a user.
#     Can include @mentions, emoticons, pastes, and auto-detected URLs (Twitter, YouTube, images, etc).
# Valid values: html (default), text.
format=html