7 つの最高の JVM 監視ツール
の Java仮想マシン(JVM) は多作になっており、アプリケーションをサポートするために実行していることに気づかないかもしれません。仮想マシンの問題は、仮想マシンがホストのオペレーティング システムから隔離されていることです。多くの監視ツールが使用するサービスの多くが機能しなくなる - プラットフォームの分離 オペレーティング システムのアクセスをブロックする 。
カバーするためにJVMのパフォーマンス、監視ツールはハイパーバイザーを監視できる必要があります。 JVM の内部操作に関する情報を渡す、JVM によって生成されるログ メッセージを処理するには、調整する必要があります。モニターは、VM ブラック ボックスを探索して、JVM リソース要件がすべて満たされていることを確認する必要もあります。
以下に、7 つの最高の JVM 監視ツールのリストを示します。
- AppOptics 編集者の選択 JVM パフォーマンスの問題の考えられるすべての原因をカバーするインフラストラクチャとアプリケーションの監視を提供します。この SaaS ツールは、ネットワークからコードの効率に至るまですべてを監視します。 14 日間の無料トライアルを開始してください。
- eG Enterprise JVM モニタリング (無料トライアル) この Java 仮想マシン モニターは、インフラストラクチャとアプリケーションをカバーするハイブリッド システム監視パッケージの一部です。 Windows Server および Linux 上で実行することも、SaaS パッケージとして利用することもできます。 30 日間の無料トライアルにアクセスしてください。
- ManageEngine アプリケーション マネージャー この監視ツールは、JVM ガベージ コレクション ルーチンとメモリ管理の追跡において非常に強力です。 Windows Server と Linux にインストールされます。
- Site24x7 APM JVM 操作とそのすべてのサポート サービスのパフォーマンスをカバーする、クラウド ベースのインフラストラクチャとアプリケーション モニター。
- Datadog APM クラウドに基づいて JVM 監視を実装するアプリケーション パフォーマンス モニター。
- セマテキストの監視 ログ中心のシステムおよびセキュリティ監視サービスはクラウドから提供され、JVM パフォーマンス監視が含まれます。
- ダイナトレース JVM モニタリングと独自のエンドツーエンド トランザクション モニターを含むクラウドベースのシステム モニター。
JVM は単なる受動的なコンテナではありません。ホストする Java プロセスにサービスを提供するために実行する独自のタスクがあります。これらには「 ガベージコレクション 」 これにより、Java プロセスがリソースの使用を終了すると、リソースが解放されます。
JVM を適切に動作し続けるために追跡する必要があるさまざまなサービスが数多くあり、手動で追跡するには要素が多すぎます。 JVM と JVM がサポートするサービスとソフトウェアを正常に動作させるための唯一の解決策は、次のことを行うことです。 自動化されたJVM監視ツール 。
JVMパフォーマンス監視
JVM システムには、次のハンドラーが組み込まれています。 メモリとリソースの管理 。残念ながら、各リソース アクセス イベントはプログラムごとにのみ管理できます。
複数の Java プログラムが同時に実行されている場合、 お互いをロックし合う – 一方はタスクを完了するために他方が必要とするリソースを保持し、もう一方は最初のプログラムがアクセスしようとしている別のリソースを保持します。したがって、どちらのプログラムも進行できません。このようなシナリオは、メモリとデータベース接続に関して、JVM 環境では非常に一般的です。
データベース関連の問題の例は、データベースが確立されたときに発生します。 最大接続数 。したがって、データベースに接続されている他のプロセスのいずれかが完了するまで、データベースに依存するプロセスは続行できません。データベースに接続されているプロセスが次の理由でハングした場合 メモリの問題 を実行すると、サーバー上のすべての Java プログラムが停止してしまいます。
Java のパフォーマンスの問題は次のようなものに分類されます。 5つのカテゴリー :
- メモリの可用性
- データベースアクセス
- マルチスレッドのデッドロック
- アプリケーション/サービスの可用性
- サーバーとネットワークの問題
これらの問題を特定し、解決するには、次のことが必要です。 JVM監視ツール スタックの多くのレベルで同時に動作し、ハードウェアとアプリケーションのパフォーマンスを常に検査できます。
最高の JVM 監視ツール
JVM 監視システムを選択するための方法論
私たちは Java 仮想マシン監視ツールの市場を調査し、次の基準に基づいてオプションを分析しました。
- ハイパーバイザー監視機能
- メモリ割り当てなどのサポートリソースの監視
- ガベージ コレクションなどの JVM 機能を追跡するモニター
- アクティビティのログ記録
- ライブパフォーマンスグラフ
- 無料の評価を可能にする無料トライアルまたはデモ パッケージ
- さまざまな仮想化サービスと JVM 追跡をカバーするツールのコストパフォーマンス
この一連の基準を使用して、クラウドベースとオンプレミスの両方のオプションを備えた一連の総合監視サービスを探しました。
1. AppOptics (無料トライアル)
アプリオプティクスは、インフラストラクチャとアプリケーションの監視の両方を実行するクラウドベースのサービスです。クラウドサービスが提供されているのは、 2つの計画 、 インフラストラクチャー そして アプリケーションパフォーマンスの監視 。 JVM ユーザーにとって幸いなことに、APM パッケージにはインフラストラクチャ モジュールも含まれています。
主な特徴:
- クラウドベース
- リソースの可用性を監視します
- ハイパーバイザーのアクティビティを追跡します
- データベースとWebアプリケーションの監視
- 根本原因分析
JVM の複雑さは、Java を含むアプリケーションの配信に寄与するすべての基盤となるリソースを監視する必要があることを意味します。完全な AppOptics サービスは、これらの貢献リソースをすべてカバーします。他のアプリケーションとの横方向の対話も AppOptics によって監視されます。 データベースのパフォーマンス そして ウェブアプリケーションシステム ハイパーバイザーや Java コードも同様です。
サービスですが、 クラウドから配信される 、それは必要です エージェント JVM 実装をホストする各サーバーにインストールされます。幸いなことに、Java を実行できるすべてのサーバー タイプに対応したエージェント バージョンがあります。
AppOptics パッケージのインフラストラクチャ部分 サーバーとネットワーク システムを監視します JVM が依存するもの。 JVM の構造は、インフラストラクチャ モジュールの問題でもあります。 JVM を実装するプロセスは、AppOptics の APM モジュールによって追跡する必要があります。 JVM 内で実行されている各プロセスは、JVM ログ メッセージを収集することによって APM によって追跡される必要もあります。最後に、JVM 内の Java プロセスがアクセスする必要がある他のアプリケーションはすべて、 ピークパフォーマンス そしてAPMによって監視されます。
Java 自体は、.NET、PHP、Python など、他のプラットフォーム用の多くのサービス ライブラリに組み込まれています。 Java プロセスと他のアプリケーションの間には継続的な対話があり、AppOptics は リクエストを追跡する プロセス全体にわたって、同じプロセスに寄与する異なるスレッドを識別します。
AppOptics JVM モニターを実行する日常的な利点は、すべての監視タスクを引き継ぐことができることにありますが、それはまた、 根本原因分析 。 AppOptics のアラート メカニズムは、特に通知がない限り、IT スタッフがすべてがスムーズに実行されていると想定できることを意味します。問題が発生すると、スペシャリストは AppOptics のサポートを受けて、ネットワークの遅さや Java スクリプトのバグなど、考えられる問題の原因を特定できます。
長所:
- JVM 固有の監視オプションを提供し、アプリケーションとインフラストラクチャの両方をカバーします
- ライブおよび過去の健全性メトリクスとリソース消費を反映する優れた視覚化を提供します
- 簡単に拡張可能で、クラウド サービスとして構築されています
- 根本原因分析ツールを提供 – 稼働率の高い環境に最適
短所:
- テストのための試用期間を長くしてほしい
魅力的な画面 ダッシュボード はよく整理されており、ドリルダウン調査が促進されます。コンソールは完全にクラウドでホストされているため、標準的なブラウザーからアクセスできます。 AppOptics を自分で試すには、14日間の無料トライアル。
編集者の選択
アプリオプティクス これは、JVM 操作の成功に貢献するスタックのすべてのレベルをカバーしているため、JVM モニタリングの最優先推奨事項です。 AppOptics は、JVM、JVM が保護する Java コード、JVM とその Java スクリプトが起動するプロセス、スレッド、調整アプリケーション、インフラストラクチャ、およびサービスのステータスを継続的にチェックします。単一の要素に 1 つの障害が発生するだけで、JVM のパフォーマンスが低下し、アクティブなアプリケーションのほとんどが停止する可能性があります。 AppOptics のアラートは問題が深刻になる前に発見し、ダッシュボードのドリルダウン画面で問題の原因がどこにあるのかを正確に示します。
14 日間の無料トライアルを開始する:my.appoptics.com/sign_up
あなた:クラウドベース
2. eG Enterprise JVM モニタリング (無料トライアル)
eGエンタープライズ は、クラウド システムとオンプレミス システムの両方のパフォーマンスを追跡できるインフラストラクチャとアプリケーションの監視パッケージです。このツールが追跡できるアプリケーションの 1 つは JVM です。
主な特徴:
- ユーザーエクスペリエンスのモニタリング
- JVMメモリ管理の追跡
- JVM ガベージ コレクションの監視
- パフォーマンスの問題に関するアラート
の JVM監視 システムはの一部です APM eG Enterprise のモジュールであり、基盤となるリソース監視システムがあります。アプリケーションの Java アクティビティは、サーバー メモリなどのシステム リソースを使用し、ネットワーク機能にもアクセスします。 インフラ監視 このパッケージのレイヤーは、完全な JVM 管理にも不可欠です。システムは、JVM インスタンスおよび同じホスト上で実行されている他のすべてのアプリケーションからのリソースに対する需要を評価できます。完全に知る 容量 そのサーバーの監視により、リソースが不足しそうな時期を特定できるようになります。サポートするサービスの容量が不足すると、JVM のパフォーマンスが低下します。
を知る 根本的な原因 JVM システムのパフォーマンスの問題に対処すると、最初から調査を開始する場合よりもはるかに早く問題に対応して修正できます。 eG Enterprise モニターは、リソースが不足する時期を予測し、アラートを生成できます。つまり、 緩和 ユーザーに気付かれる前に問題を回避するためのアクション。
長所:
- リソース需要の予測
- 進化するパフォーマンスの問題に対するアラート
- JVMメモリ使用量の追跡
- JVMスレッドステータス検査
短所:
- 価格表はありません
eG Enterprise サービスはライセンスを取得しています 物理サーバーごと 、そのため、追加コストなしで、必要な数の JVM またはその他の仮想システムを監視できます。 eG Enterprise のソフトウェアをダウンロードしてホストすることを選択できます。 Windowsサーバー または Linux 。もう 1 つのオプションは、SaaS プラットフォーム上のパッケージにアクセスすることです。を得ることができます30日間の無料トライアルeG Enterprise のインフラストラクチャと APM モジュールの両方。
eG Enterprise Access の 30 日間の無料トライアル
3. ManageEngine アプリケーション マネージャー
JVM パフォーマンス監視モジュールを設計する場合、 アプリケーションマネージャー 、ManageEngine は次のように判断しました。 メモリ管理 が最大の問題でした。彼らは正しかった。 Applications Manager のブリーフィング文書では、JVM 監視ツールが JVM によるメモリ割り当てと解放プロセスの管理方法に重点を置いていることが強調されています。 JVM のメモリ使用量にはさらに多くの点があり、アプリケーション マネージャーはそれらすべての問題をカバーします。
主な特徴:
- Windows Server および Linux のオンプレミス
- メモリ使用量の監視
- プロセス監視
- ガベージコレクションの追跡
Applications Manager は単なる JVM 監視ツールではありません。 JVM のパフォーマンスを追跡する一方で、データベースや Web アプリケーションなど、Java プロセスが依存する他のアプリケーションも監視します。
アプリケーションマネージャーとして すべてのプロセスを監視する 、ハングしているプロセスや放棄されたプロセスを見つけて、それらを強制終了することを推奨します。この警戒心だけで、JVM で発生する可能性があり、同じサーバー上で実行されている他のアプリケーションの障害を引き起こす可能性がある潜在的なパフォーマンス問題の多くを解決できます。
Applications Manager も監視します サーバーステータス 。これらの要因には、サーバー全体のメモリ使用率、ディスクの可用性と対話、インターフェイスのアクティビティが含まれます。の唯一の部分 スタック Applications Manager がカバーしないのはネットワークです。ただし、インターフェイスを監視することで、ネットワークが正常に動作していない場合に問題がどこにあるかを示すことができます。ユーザーはManageEngineを追加する必要があります マネージャーについて ネットワークデバイスの問題を徹底的に調査するため。ただし、2 つのモジュールは統合されています。
長所:
- JVMメモリとインフラストラクチャの詳細な監視を提供します
- オンプレミスとクラウドの導入オプションを提供
- アプリケーション間の相互依存性を強調して、パフォーマンスの問題がビジネス運営にどのような影響を与えるかを計画できる
- 自動化されたワークフローとスクリプトにより、ハングしたプロセスを自動的に強制終了できます。
短所:
- 利用可能なすべての機能とオプションを完全に調べるには時間がかかる場合があります
Applications Manager は次の場所にインストールできます。 Windowsサーバー そして Linux 。 ManageEngine により、パッケージが利用可能になります。 30日間の無料トライアル 。
4. Site24x7 APM
Site24x7 は次の製品です。 ゾーホー社 は ManageEngine も所有しているため、Site24x7 APM と ManageEngine Applications Manager の間には多くの類似点があります。 Site24x7 システムは SaaS プラットフォームであり、モジュールで販売されます。 APM は、プラットフォームのインフラストラクチャ監視システムとは別のものです。ただし、それには含まれます サーバー監視 アドオン サービスとして購入できるネットワーク監視も含まれます。
主な特徴:
- クラウドホスト型
- CPUとメモリの監視
- ガベージコレクションの追跡
中心となる焦点は、 JVMパフォーマンス監視 Site24x7 の APM は、JVM 自体のアクティビティを調べます。 APM によってチェックされるメトリクスには、CPU 容量使用率、プロセス数、ガベージ コレクション アクティビティの数、ガベージ コレクションのプロセス時間、スレッドの概要が含まれます。
JVM アクティビティに焦点が当てられるのは予想外のことではありません。ただし、APM の唯一の責任ではありません。 サーバー上で実行されているすべてのプロセスを追跡します すべてのアプリケーションを同時に監視します。したがって、問題がある場合にそれを見つけることができます データベース容量 。また、ディスク使用量、可用性メモリ、CPU 容量などのサーバー全体のステータスも追跡するため、問題のあるプロセスを起動するアプリケーションが JVM にまったく関係がない場合でも、JVM に影響を与える可能性のあるパフォーマンスの問題を確認できます。これは重要です。 リソースが不足しています JVM のパフォーマンスに影響を与えることになります。
Site24x7 APM は Web アプリケーションのパフォーマンスに非常に優れており、JVM が Web サイトに大きく貢献している場合は、Web テスト用の専門モジュールがあります。の ウェブサイトの監視 モジュールは APM と統合できます。ただし、スタンドアロン APM 実装にはいくつかの機能が含まれています。 ウェブパフォーマンスチェック 。
長所:
- JVM ディスク使用量、メモリ、CPU、全体的なパフォーマンスの監視に重点を置いています。
- すぐに使用できる多数の監視オプションとダッシュボード テンプレートを提供します
- 管理者はアプリケーション スタック内の依存関係を表示できるため、SLA の構築と稼働時間の最適化に役立ちます。
- AI によって強化された根本原因分析を提供し、技術的な問題をより迅速に解決します
短所:
- Site24x7 は、データベース管理を超えて拡張されるオプションを備えた機能豊富なプラットフォームですが、すべてのオプションと機能を習得するには時間がかかる場合があります
Site24x7 のシステム (コンソールを含む) は、 クラウドでホストされる 。ただし、システムでは、JVM が実行されているサーバーにオンサイト エージェントがインストールされている必要があります。 Site24x7 APM の料金は次のとおりです。 サブスクリプション 基本パッケージの月額料金と、特定のニーズに合わせてサービスを強化および調整するためのアドオンのメニューが含まれます。ご利用いただけます 30日間の無料トライアル 。
5. Datadog APM
データドッグは クラウドサービス これには、さまざまな IT システム監視ツールが含まれます。それらのサービスの 1 つは Datadog APM で、これには JVM パフォーマンスの監視が含まれます。 Datadog のダッシュボードはクラウドでホストされており、次からアクセスできます。 任意の標準ブラウザ 。このダッシュボードには、次のことを可能にする画面が含まれています。 JVMパフォーマンス監視 さまざまな重要な指標をカバーしています。
主な特徴:
- クラウドベース
- ライブパフォーマンスの追跡
- アプリケーションの依存関係マッピング
APMは常に監視しています 主要な統計 JVM インスタンスについて。これらは、リソースの使用量、特にメモリ アクティビティとガベージ コレクションの効率に焦点を当てています。
DatadogのAPM対策 応答時間 そして プロセスアクティビティ サーバー上のすべてのアプリケーションに適用されます。このサービスは、関連アプリケーションのパフォーマンスが低下しているかどうかを示します。このような問題は、特にアプリケーションが JVM で実行されている Java プロセスにサービスを提供する場合、JVM のパフォーマンスに影響を与える可能性があります。このようなサービスの例としては、データベース管理システムがあります。
Datadog APM のダッシュボード アプリケーション間でプロセスを結び付ける 、それらの間の関係を示し、これらの境界を越えたパフォーマンスを測定します。
長所:
- JVM ディスク使用量、メモリ、CPU、全体的なパフォーマンスの監視に重点を置いています。
- すぐに使用できる多数の監視オプションとダッシュボード テンプレートを提供します
- 管理者はアプリケーション スタック内の依存関係を表示できるため、SLA の構築と稼働時間の最適化に役立ちます。
- AI によって強化された根本原因分析を提供し、技術的な問題をより迅速に解決します
短所:
- より長い試用期間を使用できる
APM はサーバーのパフォーマンス統計も検査します。インフラストラクチャ モニターを追加することで、サーバーの監視を強化できます。 Datadog APM はサブスクリプション モデルで、ホストごとに月ごとの料金で課金されます。 Datadog は次のような APM を提供します 14日間の無料トライアル 。
6. セマテキストの監視
Sematext は、強力な機能を備えたクラウドベースの監視サービスです。 SIEMセキュリティ監視 特徴。 Sematext の主な戦略は、ログ ファイルの収集と分析を中心に展開されます。これは、セキュリティ情報およびイベント管理システムの典型的な方法論です。ログメッセージが到着します リアルタイム およびファイルされる前に表示されます。
主な特徴:
- クラウドベース
- ライブトランザクションレポート
- パフォーマンスグラフ
Sematext システムは、ログ メッセージに含まれるすべての情報を利用して、さまざまなメッセージを生成できます。 監視および管理サービス 。これらの 1 つは Sematext Monitoring と呼ばれるインフラストラクチャ モニターで、これには JVM パフォーマンス モニタリングが含まれます。これは Java プロファイラーと呼ばれます。
Sematext Monitoring は、以下の統計を収集できます。 100の要素 Java のパフォーマンスを中心に。これらのほとんどは、根本原因の分析に利用できます。 Sematext システムは、次のことを示すいくつかの重要なメトリクスを認識します。 パフォーマンスステータス 。これらは、メモリ使用量、ガベージ コレクション アクティビティ、および JVM スレッド上のデータです。
Sematext は収集したすべての情報を保存するため、ユーザーは再度チェックして同じパフォーマンス指標を確認できます。 時間とともに 。これは、JVM パフォーマンスの低下がパターンに従っているかどうか、および問題の原因となる時間関連の問題があるかどうかを特定するときに役立ちます。 Sematext モニタリングは他のすべてのプロセスを監視し、 定期的なチェック サーバーリソースの可用性について。
長所:
- オンプレミス、クラウド、ハイブリッド クラウド構成をサポートし、ほぼすべての環境を監視できます
- 資産の検出は継続的に行われ、システム管理者に常に最新のデバイスのインベントリを提供します。
- Java プロファイラやネットワーク トポロジ マップなどのトラブルシューティング ツールが組み込まれています
- Web サイトなどの外部資産を監視して、稼働時間、遅延、パフォーマンスを測定できます。
短所:
- テストのための試用期間を長くしてほしい
セマテキスト監視は メーター制 、データ収集エージェントごとに 1 時間あたりの料金が設定されており、データ処理量に対する追加料金はありません。利用可能なプランは 3 つあります。 基本 、 標準 、 そして プロ 。の 基本 計画は 自由に使用できます また、データ保持期間は 30 分で 5 台のホストを監視するという制限があります。の 標準 プランのデータ保持期間は 1 か月で、 プロ プランではデータは 2 か月間保持されます。 Standard プランと Pro プランは、 14日間の無料トライアル 。
7.ダイナトレース
ダイナトレースは、 クラウドベースの インフラストラクチャとアプリケーションのパフォーマンスを監視するモニターで、特に Web 監視に優れています。 APM とインフラストラクチャ監視モジュールは両方とも 1 つのパッケージにバンドルされているため、JVM パフォーマンスの監視に最適です。
主な特徴:
- クラウドベース
- 時系列サンプリング
- クロスアプリケーショントランザクション追跡
の JVMパフォーマンス監視 Dynatrace の機能は、メモリ ステータス、ガベージ コレクション、リクエスト、プロセス ステータス、応答時間、インタラクション、エラー率、トラフィック量など、JVM のメトリクスの包括的なリストをカバーします。
Dynatrace は、ステータスごとにステータスを簡単に監視するだけでなく、独自の エンドツーエンドのトランザクションジャーニーモニター 。これは各リクエストを追跡し、その配信と履行に貢献する各サービスを検査します。 Web 実装では、これは、JVM ステータスがこのアクティビティの成功または失敗にどのように寄与するかを調べるのに特に役立ちます。
長所:
- テンプレート ダッシュボードを含む JVM 環境のサポートを提供します。
- エンタープライズ NOC に最適な、高度に視覚的でカスタマイズ可能なダッシュボード
- クラウドで動作するため、プラットフォームに依存しません。
- アプリケーションの稼働時間だけでなく、サポートするインフラストラクチャやユーザー エクスペリエンスも監視できます
短所:
- 大規模ネットワーク向けに特別に設計されているため、小規模組織ではこの製品に圧倒される可能性があります
Dynatrace はその料金を請求します フルスタック監視 月ごとのサブスクリプション料金によるサービス。でシステムを体験できます 15日間の無料トライアル 。
JVM監視ツールの選択
JVM を適切に実行し続けるには、非常に包括的なツールが必要です。スタンドアロン ユーティリティやコマンドライン ユーティリティだけでは不十分です。テストは次のとおりである必要があります 再帰的に実行する そしてモニターには次の機能が必要です ステータスしきい値アラート 潜在的なパフォーマンスの問題を回避するために、多数のリソースを使用します。
IT 技術者の立ち会いが必要なシステムよりも、アラート メカニズムを備えた監視サービスの方が適しています。 IT スペシャリストにテストを実行して結果を監視するという任務は、 人的資源の無駄遣い 。技術スペシャリストの費用は高く、見つけるのが難しいため、自動化できるタスクを削除して彼らの時間を最大限に活用したいと考えます。 JVM やその他のシステム リソースの監視は、コンピュータが人間よりも優れた作業を行う好例です。
見つける必要があります 優れた JVM 監視システム また、その他の多くのインフラストラクチャやリソースの監視タスクを処理するタスクを見つけられれば、費用をいくらか節約できます。
JVM監視に関するよくある質問
JVM では何を監視すればよいですか?
JVM を監視するときに収集するパフォーマンス統計は次のとおりです。
- ヒープメモリ– アプリケーションに使用されるメモリ空間
- ガベージコレクション (GC)– 割り当てられたメモリが不要になった場合はクリーンアップが不要になり、使用可能な状態に戻ります
- スレッド– これらはユーザーのリクエストに対応します
Java プロセスを監視するにはどうすればよいですか?
トランザクション追跡を実装して、Java プロセスの監視を実行します。トレースはログを通じて行われ、アクションとコードの各行を比較します。これにより、システム リソースの可用性に対する Java プロセスの影響を確認できます。
Java プロファイリング ツールとは何ですか?
Java プロファイラは Java コードをステップ実行し、各行の実行をスレッド実行メモリ アクティビティやガベージ コレクションなどのシステム アクティビティにリンクします。