すべてのプロダクト
Search
ドキュメントセンター

:Grafana でカスタムメトリクスを表示し、アラートを作成する

最終更新日:May 01, 2026

Managed Service for Prometheus を使用すると、Grafana ダッシュボードでモニタリングデータを可視化できます。カスタムダッシュボードを作成するか、公式 Grafana ウェブサイトからダッシュボードをインポートできます。このトピックでは、Container Service for Kubernetes (ACK) クラスターにデプロイされ、Container Registry を使用するサンプルアプリケーションのためのカスタム Grafana ダッシュボードを作成する手順を説明します。

前提条件

操作手順

次の図は、Managed Service for Prometheus を使用したカスタム Grafana ダッシュボード作成のワークフローを示しています。

自定义Grafana大盘

ステップ 1:アプリケーションのアップロード

ご利用のアプリケーションのイメージをビルドし、Container Registry のイメージリポジトリにプッシュします。

  1. 次のコマンドを実行して、モジュールを再コンパイルします。
    mvn clean install -DskipTests
  2. 次のコマンドを実行して、イメージをビルドします。
    docker build -t <your-image-name>:<your-image-tag> . --no-cache
    例:
    docker build -t promethues-demo:v0 . --no-cache
  3. 次のコマンドを実行して、イメージにタグを付けます。
    sudo docker tag <your-image-name>:<your-image-tag> <registry-domain>/<namespace>/<image-name>:<image-tag>
    例:
    sudo docker tag promethues-demo:v0 registry.cn-hangzhou.aliyuncs.com/testnamespace/promethues-demo:v0
  4. 次のコマンドを実行して、イメージをイメージリポジトリにプッシュします。
    sudo docker push <registry-domain>/<namespace>/<image-name>:<image-tag>
    例:
    sudo docker push registry.cn-hangzhou.aliyuncs.com/testnamespace/promethues-demo:v0
    Container Registry コンソールイメージバージョン ページに、アップロードされたアプリケーションイメージが表示されます。镜像

ステップ 2:アプリケーションのデプロイ

アプリケーションを ACK クラスターにデプロイします。

  1. ACK コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、クラスター をクリックします。
  3. クラスターリスト ページで、ご利用のクラスターを見つけ、アクション 列の アプリケーション をクリックします。
  4. デプロイメントを作成します。
    1. 左側のナビゲーションウィンドウで、ワークロード > デプロイメント を選択します。
    2. 展開 ページで、YAML のリソースの作成 をクリックします。
    3. デプロイ ページで、テンプレート エディターに次の YAML を入力し、デプロイ をクリックします。
      apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
      kind: Deployment
      metadata:
        name: prometheus-demo
      spec:
        replicas: 2
        template:
          metadata:
            annotations:
              prometheus.io/scrape: 'true'
              prometheus.io/path: '/prometheus-metrics'
              prometheus.io/port: '8081'
            labels:
              app: tomcat
          spec:
            containers:
            - name: tomcat
              imagePullPolicy: Always
              image: <registry-domain>/<namespace>/<image-name>:<image-tag>
              ports:
              - containerPort: 8080
                name: tomcat-normal
              - containerPort: 8081
                name: tomcat-monitor
      例:
      apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
      kind: Deployment
      metadata:
        name: prometheus-demo
        labels:
          app: tomcat
      spec:
        replicas: 2
        selector:
          matchLabels:
            app: tomcat
        template:
          metadata:
            annotations:
              prometheus.io/scrape: 'true'
              prometheus.io/path: '/prometheus-metrics'
              prometheus.io/port: '8081'
            labels:
              app: tomcat
          spec:
            containers:
            - name: tomcat
              imagePullPolicy: Always
              image: registry.cn-hangzhou.aliyuncs.com/peiyu-test/prometheus-demo:v0
              ports:
              - containerPort: 8080
                name: tomcat-normal
              - containerPort: 8081
                name: tomcat-monitor
    作成されたデプロイメントは、展開 ページに表示されます。容器组
  5. サービスを作成します。
    1. 左側のナビゲーションウィンドウで、ネットワーク > サービス を選択します。
    2. サービス ページで、YAML のリソースの作成 をクリックします。
    3. デプロイ ページで、テンプレート エディターに次の YAML を入力し、デプロイ をクリックします。
      apiVersion: v1
      kind: Service
      metadata:
        labels:
          app: tomcat
        name: tomcat
        namespace: default
      spec:
        ports:
        - name: tomcat-normal
          port: 8080
          protocol: TCP
          targetPort: 8080
        - name: tomcat-monitor
          port: 8081
          protocol: TCP
          targetPort: 8081
        type: NodePort
        selector:
          app: tomcat
    作成されたサービスは、サービス ページに表示されます。服务

ステップ 3:収集ルールの構成

デフォルトでは、Managed Service for Prometheus は CPU、メモリ、ネットワークの基本的なメトリクスをモニタリングします。注文情報などの追加データをモニタリングするには、Managed Service for Prometheus でカスタムのデータ収集ルールを作成する必要があります。

  1. Cloud Monitor コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、Managed Service for Prometheus > インスタンス を選択して、Managed Service for Prometheus のインスタンス一覧ページを開きます。

  3. ご利用の Prometheus インスタンス の名前をクリックします。
  4. 以下のシナリオに基づいて、ご利用のアプリケーション用のデータ収集ルールを構成します。
    • ACK クラスターにデプロイされたアプリケーション(例:注文情報)のビジネスデータをモニタリングする場合、次の操作を行います。
      1. 左側のナビゲーションウィンドウで、サービスの検出 をクリックし、設定 タブをクリックします。
      2. 設定 ページで、ServiceMonitor タブをクリックし、ServiceMonitor の追加 をクリックします。
      3. 表示されるダイアログボックスに次の内容を入力し、OK をクリックします。
        apiVersion: monitoring.coreos.com/v1
        kind: ServiceMonitor
        metadata:
          # 固有の名前を入力します。
          name: tomcat-demo
          # 対象の名前空間を入力します。
          namespace: default
        spec:
          endpoints:
          - interval: 30s
            # Service YAML で定義されている Prometheus エクスポーターのポートの `name` に設定します。
            port: tomcat-monitor
            # Prometheus エクスポーターのパスに設定します。
            path: /metrics
          namespaceSelector:
            any: true
            # デモアプリケーションの名前空間。
          selector:
            matchLabels:
              # Service YAML のラベル値に設定して、正しいサービスを対象にします。
              app: tomcat

        ServiceMonitor タブに、構成済みのサービス検出が表示されます。

        服务发现
    • ACK クラスター外のソース(例:Redis 接続数)のビジネスデータをモニタリングする場合、次の操作を行います。
      1. 左側のナビゲーションウィンドウで、設定 をクリックします。設定 ページで、Prometheus.yaml の編集 をクリックします。
      2. 表示されるダイアログボックスに次の内容を入力し、Save をクリックします。
        global:
          scrape_interval:     15s # スクレイプ間隔を 15 秒ごとに設定します。デフォルトは 1 分ごとです。
          evaluation_interval: 15s # ルールを 15 秒ごとに評価します。デフォルトは 1 分ごとです。
        scrape_configs:
          - job_name: 'prometheus'
            static_configs:
            - targets: ['localhost:9090']

ステップ 4:ダッシュボードの構成

Grafana ダッシュボードを構成して、データを表示します。

  1. Grafana ダッシュボード概要ページ に移動します。
    説明 Expert Edition for Grafana が有効になっている必要があります。
  2. 左側のナビゲーションウィンドウで、er > + New dashboard を選択します。
  3. New dashboard ページで、Add a new panel をクリックします。
  4. Edit Panel ページの Query タブで、上部のドロップダウンリストからご利用のクラスターを選択します。セクション A で、Metrics ドロップダウンリストから go_gc_duration_seconds などのメトリックを選択します。
    Grafana Add Query
  5. 右側のパネルで、チャートに名前を付け、グラフ、テーブル、ヒートマップなどの可視化タイプを選択し、必要に応じて他のパラメーターを構成します。
    Create Dashboard Visualization
  6. 右上隅の Save をクリックします。表示されるダイアログボックスで、ダッシュボードに名前を付け、クラスターを選択して、Save をクリックします。

    必要に応じて、複数のダッシュボードおよびチャートを作成できます。

    Save Grafana Dashboard
    次の図は、構成済みの Grafana ダッシュボードを示しています。ARMS Prometheus Grafana Dashboard to Customize

ステップ 5:複雑なメトリクスのモニタリング

複雑な計算を必要とするメトリクスをモニタリングするには、Managed Service for Prometheus で PromQL クエリをビルドおよびテストします。

  1. Grafana ダッシュボード概要ページ に移動します。
  2. 左側のナビゲーションウィンドウで、Explore アイコンをクリックします。
  3. Explore ページで、上部のドロップダウンリストからご利用のクラスターを選択します。Metrics フィールドに PromQL 文を入力し、右上隅の Run Query をクリックしてテストします。
    Prometheus Data Debug
  4. クエリの実行が成功したら、新しいパネルまたはダッシュボードを追加できます。詳細については、「ステップ 4:ダッシュボードの構成」をご参照ください。

ステップ 6:アラートの作成

メトリクスをモニタリングするためのアラートルールを作成するには、「Prometheus アラートルールの作成」をご参照ください。