0

Jolokia と jmx4perl を使用して、Nagios で tomcat インスタンスを監視しています。現在、次のコマンド定義を使用しています。

define command {
 command_name         check_tomcat
 command_line         $USER3$/check_jmx4perl \
                          --url $ARG1$ \
                          --mbean java.lang:type=Memory \
                          --attribute HeapMemoryUsage \
                          --path used \
                          --base java.lang:type=Memory/HeapMemoryUsage/max \
                          --label "Heap-Memory: %.2r% used (%.2v %u / %.2b %w)" \
                          --warning 80 --critical 90
}

... Nagios で次のような素敵な出力が得られます。

OK - Heap-Memory: 37.93% used (295520640 / 779091968)

理想的な世界では、次のように Tomcat バージョンも取得したいと考えています。

OK - Tomcat 7.0.68 - Heap-Memory: 37.93% used (295520640 / 779091968)

これは 1 つのコマンドで実行できますか? それとも、2 つのコマンド定義と 2 つのサービス定義が必要ですか?

ありがとう、

4

1 に答える 1

0

まず、カスタム構成でTomcatをチェックできます。その構成には、Tomcatをチェックするためのコマンドとサービスがあります。次に、このようにcfgファイルを読み取ることができます。

--config /etc/nagios/check_jmx4perl/tomcat.cfg
                --server servername \
                --check tc_servlet_requests \
                --critical 1000 \
                servletname

コマンドとサービスを 1 つの構成ファイルに記述するには、コマンド定義を記述し、その後にそのコマンドのサービス定義を記述します。また、.cfg ファイルに root 権限があることを確認してください。

Jmx4Perl は、JMX (Java Management Extensions) に基づく Java JEE Server 管理インターフェースにアクセスするための代替手段を提供します。これはエージェント ベースのアプローチであり、アプリケーション サーバーにデプロイされた小さな Java Web アプリケーションが、アプリケーション サーバー内に登録された JMX MBean への HTTP/JSON ベースのアクセスを提供します。

使い方

エージェント モードの場合、小さな Java エージェント WAR (Web アーカイブ) を Java アプリケーション サーバーにデプロイする必要があります。このエージェントは、Jolokia プロジェクト (www.jolokia.org) によって提供されます。アプリケーション サーバーに起動パラメータを追加したり、追加のポートを開く必要はありません。Perl モジュール JMX::Jmx4Perl は、デプロイされたエージェント サーブレットにアクセスし、リクエストの結果を JSON から単純な Perl オブジェクトに変換します。

于 2016-09-16T13:38:33.520 に答える