SpringBoot+Prometheus+Grafanaでシステムのビジュアル監視を実現

シーン

アクチュエーターは SpringBoot に統合されており、システムの実行ステータスを監視します。

SpringBoot に Actuator を統合してシステムの実行状態を監視する

システム監視を実現する上記のアクチュエータに基づいて、次のようなソリューションも採用できます。

プロメテウス

Prometheus は、システムの監視とアラートのためのオープンソース ツールキットであり、プル方式を使用して時系列測定データを収集します (プッシュ方式もサポートしています)。

Httpプロトコルによる送信。その仕組みとしては、監視対象のサービスが HTTP インターフェイスである Prometheus エンドポイントを公開する必要があるということです。

このインターフェイスはメトリクスと現在の値のリストを公開し、Prometheus アプリケーションはこのインターフェイスから定期的にデータを取得します。このデータは通常、時系列データベースに保存できます。

次に、視覚化されたダッシュボード (例: Grafana) を通じてデータを表示します。

グラファナ

Grafana は、シーケンシャルおよびノンシーケンシャルを含む多くの主流のデータ ソースをサポートできるオープン ソースのダッシュボード表示ツールです。

これが提供する表示構成とスケーラビリティは、時系列データの表示ニーズのほとんどを満たしており、優れたツールです。

注記:

ブログ:
Domineering Rogue Temperament_C#、アーキテクチャ ロード、SpringBoot-CSDN ブログ

成し遂げる

1. 新しい SpringBoot プロジェクトを作成し、依存関係を追加します

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!-- prometheus support -->
        <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-prometheus</artifactId>
        </dependency>

2. yml ファイルを変更し、次の構成を追加します。

management:
  metrics:
    export:
      prometheus:
        enabled: true
        step: 1m
        descriptions: true
  web:
    server:
      auto-time-requests: true
  endpoints:
    prometheus:
      id: springmetrics
    web:
      exposure:
        include: health,info,env,prometheus,metrics,httptrace,threaddump,heapdump,springmetrics

# 开发环境配置
server:
  # 服务器的HTTP端口,默认为8080
  port: 996
  servlet:
    # 应用的访问路径
    context-path: /
  tomcat:
    # tomcat的URI编码
    uri-encoding: UTF-8
    # tomcat最大线程数,默认为200
    max-threads: 800
    # Tomcat启动初始化的线程数,默认值25
    min-spare-threads: 30

ここで設定されているポートは 996 であることに注意してください。

3. プロジェクトを開始して訪問する

http://127.0.0.1:996/actuator/プロメテウス

つまり、漏洩した情報を確認できるのです

 

4. Prometheusをダウンロードしてインストールします

ダウンロードリンク:

ダウンロード | プロメテウス

これは Windows 上なので、Windows に対応する zip パッケージを選択してください

 

もちろん、docker など、他のダウンロードしてインストールする方法もあります。

公式 Web サイトから長期間ダウンロードできない場合は、インターネットから対応する Windows パッケージを検索してダウンロードし、解凍することができます。

解凍後、prometheus.yml を見つけて、構成ファイル内の metrics_path を対応するパスに変更し、ターゲットを対応する IP およびポートに変更します。

 

詳しい設定手順については、公式ドキュメントを参照してください。

https://github.com/prometheus/prometheus/blob/main/documentation/examples/prometheus.yml

構成ファイルを変更した後、prometheus.exe をダブルクリックして起動し、起動が成功するまで待ち、デフォルトのポート 9090 にアクセスします。

http://ローカルホスト:9090

式を入力してください

jvm_memory_used_bytes

次にモニタリング効果を確認します

 

5. Grafanaをダウンロードしてインストールします

ダウンロードリンク:

grafana ローカルのインデックス

 

ダウンロードして解凍した後、bin の下で grafana-server.exe を見つけ、ダブルクリックして起動します。

 

起動成功後のアクセス

http://127.0.0.1:3000/ログイン

 

デフォルトのアカウントは admin で、パスワードも admin です。

6. ログインし、パスワードの変更を求めるプロンプトが表示されたら、「データ ソース」をクリックします。

次に、データ ソース タイプを Prometheus として追加します。

 

上で開始した対応するアドレスを入力してください

 

7. 右上隅をクリックして新しいダッシュボードを作成します

 

次に、「ビジュアライゼーションの追加」をクリックします

 

次に、追加したデータ ソースを選択します

 

次に、以下の jvm_buffer_count_buffers などのパラメータを選択し、必要に応じて他のパラメータを設定し、保存して表示します。

 

おすすめ

転載: blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/131931722