考えてみてください。以前はどのようにしてJavaアプリケーションの監視ステータスを監視していましたか?一般的に言えば、jstatを使用してヒープメモリの使用量/ガベージコレクションをカウントしたり、jstackを介してJavaスレッドのステータスを分析したりするなど、Linuxサーバーでいくつかのコマンドを渡します。したがって、SpringBootの場合、アプリケーションの状態を監視する際に使用できる、よりシンプルで視覚的なツールが提供されます。この記事では、この知識を共有します〜
監視プラグイン:アクチュエータ
アクチュエータプラグインの導入は非常に簡単で、プロジェクトに依存する必要があるだけです(springbootのバージョンは一貫している必要があります。そうでない場合、エラーが報告される可能性があります):
コンパイルグループ: 'org.springframework.boot'、名前: 'spring-boot-starter-actuator'、バージョン: '1.5.15.RELEASE'
次に、application.propertiesに構成を追加します(認証は必要ありません)。
management.security.enabled = false
依存関係を追加したら、次のプロジェクトを開始して、変更内容を確認します。
監視アドレス
アプリケーションの全体的なステータスとディスクのステータスを監視する
json文字列の形式で環境変数を説明する
スレッドダンプファイル
Spring Boot Admin:ビジュアルバックグラウンド管理システム
スプリングアクチュエータの最大の欠点は、json形式で表示されることです。より適切に監視および表示するために、より便利なツール、springbootadminを導入します。
springbootadminを使用した監視のアーキテクチャ図は次のとおりです。
springbootadminモニタリング
人気のあるポイントは、監視する必要があるn個のSpringbootビジネスシステムがある場合、これらのクライアントを監視するために追加のspringbootadminアプリケーションが必要であり、クライアントとサーバー間のわずかな設定で十分です。
サーバー側のspringbootadminserverの構成を見てみましょう。
依存関係を追加
コンパイルグループ: 'de.codecentric'、名前: 'spring-boot-admin-server'、バージョン: '1.5.5'
コンパイルグループ: 'de.codecentric'、名前: 'spring-boot-admin-server-ui'、バージョン: '1.5.5'
@EnableAdminServerアノテーション
@EnableAdminServer
springbootadminアプリケーションを起動します。
現在のクライアント監視情報は空です
次に、クライアントを構成します。
依存関係を追加
compilegroup: 'de.codecentric'、name: 'spring-boot-admin-starter-client'、version: '1.5.5'
結合構成
springbootadminserver構成を指定する
クライアントを起動した後、springbootadminserverモニタリングインターフェイスに入ると、次のことがわかります。
モニタリングインターフェイスリスト
クライアントの監視
監視インターフェースでは、環境変数、スレッドのステータス情報、クラスの読み込み情報(依存するサードパーティのjarを含む)、httpリクエストの統計(数と時間)、GCの時間と時間の統計を視覚的に理解できます。 、ヒープ/非ヒープのメモリ使用量など
総括する
この記事を通じて、Springbootがモニタリングに関する開発者向けの一連のソリューションを準備したことを理解できるはずです。ビジュアルツールを使用すると、モニタリングが簡単になります〜