このページでは、DingTalk のチャットボットメッセージ、 WebHook、および Message Center をアラームの通知方法に設定する方法を説明します。

DingTalk

指定した DingTalk グループに DingTalk チャットボットメッセージでアラーム通知を送信するように Log Service を設定できます。 さらに、通知するメンバーグループを at (@) で指定することができます。
各 Chatbot は 1 分あたり 20 通までアラームメッセージを送信できます。
手順
  1. DingTalk を開き、対象の DingTalk グループを選択します。
  2. 右上隅にある [グループ設定] をクリックし、[ChatBot] をクリックします。
  3. [カスタム (Custom message services via webhook)] を選択して [追加] をクリックします。
  4. ChatBot 名 を入力して [完了] をクリックします。
  5. [コピー] をクリックして WebHook URL をコピーします。
  6. Log Service コンソールで [アラームの作成] をクリックし、[通知] ドロップダウンから [WebHook-DingTalk Bot] を選択します。
  7. [リクエスト URL] ボックスに ステップ 5 でコピーした URL を貼り付けます。 [タグ付けされたリスト] ボックスに、通知の送付対象の グループメンバーの携帯番号を入力します。携帯番号はコンマ ( , ) で区切ります。
  8. [コンテンツ] エリアで 通知 内容を編集します。

    Log Service では、通知のコンテンツのデフォルトが提供されています。 必要に応じてデフォルトをカスタマイズできます。

    ats (@) を使用して 1 人以上のグループメンバーの注意を引くには、 @携帯番号 を入力します。

    図 1. 通知の内容

WebHook

指定した URL に送信されるアラーム通知の通知方法として WebHook を設定できます。

この場合、タイムアウト制限は 5 秒です。 リクエストの送信後 5 分以内にレスポンスが届かない場合、Log Service はリクエストが 失敗 したと判断します。
手順
  1. Log Service コンソールで アラームを作成する方法 [通知] ドロップダウンリストから [WebHook-Custom] を選択します。
  2. [リクエスト URL] ボックスにカスタマイズした WebHook URL を入力します。 [リクエスト方法] を選択します。
  3. (オプション) [リクエストヘッダーの追加] をクリックしてリクエストヘッダーを追加します。

    デフォルトでは、Content-Type: application/json;charset=utf-8 リクエストヘッダーが通知に含まれます。

  4. リクエスト内容を入力します。
    図 2. 通知内容
  5. [送信] をクリックします。

メッセージセンター (推奨)

メッセージセンターのコンソールで、Log Service アラーム通知の受信者を設定できます。 アラームがトリガーされると、メッセージセンターは指定された方法でアラーム通知を送信します。

手順
  1. アラームの設定[通知]ドロップダウンリストから[通知]を選択します。
  2. メッセージセンター コンソールで、[メッセージの設定] > [共通設定] を選択します。
  3. [通知の第プ] > [Log Service アラーム通知][アカウント連絡先] 列で [変更] をクリックします。
  4. [連絡先の変更] ダイアログボックスで必要なメッセージ受信者を選択します。

    china site china site

    • 中国サイト
    • メッセージ受信者は 1 人以上を設定する必要があります。
    • デフォルトでは、通知メッセージは E メールで送信されます。他の方法は設定できません。
    • 1 日 50 通のアラーム通知メッセージを指定の E メール受信箱に送信できます。

通知内容

各通知に 通知内容 を入力する必要があります。 アラームのトリガーに使用するテンプレート変数は、${fieldName} の形式で参照できます。 Log Service は、アラーム送信時に 通知内容 のテンプレート変数を実際の値に置き換えます。 例:${Project} は、アラームルールが属するプロジェクトの名前に置き換えられます。
有効な変数を参照する必要があります。 参照された変数が存在しないか、無効な変数を参照した場合、その変数は空の文字列として処理されます。 参照した変数の値が object 型の場合、その値を表示するために JSON 文字列に変換します。

次の表に、使用可能なすべての変数とそれらに対応する参照方法を示します。

変数 説明 例: 参照の例
Aliuid プロジェクトが属する Aliuid 1234567890 ユーザー ${Aliuid} のアラームルールがトリガーされています。
Project アラームルールが属するプロジェクト my-project プロジェクト ${Project} のアラームがトリガーされています。
AlertID 実行されたアラームの一意の ID。 0fdd88063a611aa114938f9371daeeb6-1671a52eb23 実行されたアラームの ID は ${AlertID} となります。
AlertName アラームルール名。プロジェクト内で一意である必要があります。 alarm-1542111415-153472 アラームルール ${AlertName} がトリガーされています。
AlertDisplayName アラームルールの表示名 My alarm rule アラーム ${AlertDisplayName} がトリガーされています。
Condition アラームをトリガーする条件式。 条件式の各変数はアラームをトリガーする値に置き換えられ、角括弧で囲まれます。 [5] > 1 アラーム条件式は ${Condition} の形式です。
RawCondition 条件の変数を他の値に置き換えることができない生条件式 count > 1 生条件式は ${RawCondition} の形式です。
Dashboard アラームに関連付けられているダッシュボードの名前 mydashboard アラームに関連付けられているダッシュボードは ${Dashboard} の形式です。
DashboardUrl アラームに関連付けられているダッシュボードのアドレス https://sls.console.aliyun.com/next/project/myproject/dashboard/mydashboard アラームに関連付けられているダッシュボードのアドレスは ${DashboardUrl} の形式です。
FireTime アラームがトリガーされた時刻 2018-01-02 15:04:05 アラームの発生時間は ${FireTime} の形式です。
FullResultUrl トリガーされたアラームのレコードをクエリするために使用される URL https://sls.console.aliyun.com/next/project/my-project/logsearch/internal-alarm-history?endTime=1544083998&queryString=AlertID%3A9155ea1ec10167985519fccede4d5fc7-1678293caad&queryTimeType=99&startTime=1544083968 次をクリックして詳細を確認します: ${FullResultUrl}。
Results クエリのパラメータと結果、および配列型。
[
  {
    "EndTime": 1542507580,
    "FireResult": {
      "__time__": "1542453580",
      "count": "0"
    },
    "LogStore": "test-logstore",
    "Query": "* | SELECT COUNT(*) as count",
    "RawResultCount": 1,
    "RawResults": [
      {
        "__time__": "1542453580",
        "count": "0"
      }
    ],
    "StartTime": 1542453580
  }
]
最初のクエリは$ {Results [0]. StartTime}で始まり、$ {Results [0]. EndTime}で終わります。 count パラメータの値は ${Results[0]. FireResult.count}となります。
この例では、0 はチャートのシーケンス番号 (検索 / 分析ステートメントの視覚化形式 )を示します。 詳細については、「 グラフのシーケンス番号を表示する方法」をご参照ください。