Prometheus のモニタリング機能を使用すると、DingTalk グループのアラートカードにメトリックトレンドチャートを追加できます。メトリックトレンドチャートからアラートに関する詳細情報を取得できるため、問題のトラブルシューティングに役立ちます。このトピックでは、アラートカードにメトリックトレンドチャートを追加するために Prometheus アラートポリシーを設定する方法について説明します。
前提条件
- DingTalk グループが作成されていること。詳細については、DingTalk チャットボット を参照してください。
- アラートの連絡先として DingTalk グループが指定されている通知ポリシーが定義されていること。詳細については、通知ポリシーの作成と管理 を参照してください。
メトリックトレンドチャートを設定する
ARMS コンソール にログインします。
- 左側のナビゲーションペインで、 を選択します。
- Prometheus アラートルール ページで、必要に応じて次のいずれかの操作を実行します。
- 既存のアラートのメトリックトレンドチャートを設定するには、アラートを見つけて、アラートの横にある 編集 をクリックします。
- 新しいアラートのメトリックトレンドチャートを設定するには、Prometheus アラートルールの作成 をクリックします。
- Prometheus アラートルールの編集ページまたは Prometheus アラートルールの作成ページで、必要に応じて次のいずれかの操作を実行します。
- 詳細設定 セクションで、アノテーションを作成アノテーション の横にある をクリックして、次のアノテーションを追加します。
キー 値 例 _aliyun_display_promql メトリックトレンドチャートを表示するために使用する PromQL ステートメント。通常、しきい値の判定が削除されたアラート PromQL ステートメントです。たとえば、 cpu_usage > 80
をcpu_usage
に変更します。_aliyun_display_promql:cpu_usage
_aliyun_display_name トレンドチャートのメトリック名。 _aliyun_display_name: コンテナ CPU 使用率
- DingTalk グループチャットがアラートの連絡先として指定されている通知ポリシーを選択します。
- その他のパラメーターを変更します。その他のパラメーターの詳細については、Prometheus インスタンスのアラートルールを作成する を参照してください。
- 保存 をクリックします。
- 詳細設定 セクションで、アノテーションを作成アノテーション の横にある をクリックして、次のアノテーションを追加します。
メトリックトレンドチャートを表示する
設定が完了し、アラートがトリガーされると、DingTalk グループのアラートカードでメトリックトレンドチャートを表示できます。
アラートカードの詳細については、指定されたグループチャットでアラートを処理する を参照してください。
FAQ
- ステートメントを使用しない場合でも、アラート PromQL ステートメントを手動で設定する必要があるのはなぜですか?
アラート PromQL ステートメントは、しきい値の判定と AND/OR ロジックに関して、メトリックトレンドチャートを表示するための PromQL ステートメントとまったく同じではありません。アラート PromQL ステートメントからしきい値の判定を削除する必要があります。
- _aliyun_display_promql を指定した後、メトリックトレンドチャートが表示されないのはなぜですか?
_aliyun_display_promql パラメーターと PromQL ステートメントを使用して取得した時系列にまったく同じラベルがある場合にのみ、メトリックトレンドチャートをレンダリングできます。通常、PromQL ステートメントを実行すると、複数の時系列を取得できます。メトリックトレンドチャートをレンダリングするために、ラベルに基づいて時系列が選択されます。たとえば、
cpu_usage > 80
ステートメントを実行して取得したメトリックに pod_name ラベルと container ラベルが含まれている場合、_aliyun_display_promql パラメーターを使用してクエリした結果にもこれらのラベルが含まれている必要があります。