1 ソースからのセットアップ

概要

ソースからインストールした場合、次の情報はZabbix Javaゲートウェイのセットアップに役立ちます。

ファイルの概要

ソースから Java ゲートウェイを取得した場合、シェル スクリプト、JAR、および設定ファイルのコレクションが $PREFIX/sbin/zabbix_java の下にあるはずです。 これらのファイルの役割を以下にまとめます。

bin/zabbix-java-gateway-$VERSION.jar

Java ゲートウェイ JAR ファイル本体

lib/logback-core-0.9.27.jar
       lib/logback-classic-0.9.27.jar
       lib/slf4j-api-1.6.1.jar
       lib/android-json-4.3_r3.1.jar

Java ゲートウェイの依存関係: LogbackSLF4J、および Android JSON ライブラリ。

lib/logback.xml  
       lib/logback-console.xml

Logback の構成ファイル。

shutdown.sh  
       startup.sh

Java ゲートウェイを開始および停止するための便利なスクリプト。

settings.sh

上記の起動スクリプトとシャットダウンスクリプトによって提供される設定ファイル。

Javaゲートウェイの設定と実行

デフォルトでは、Javaゲートウェイはポート10052でリッスンします。別のポートでJavaゲートウェイを実行したい場合は、settings.shスクリプトで指定できます。このオプションやその他のオプションの指定方法については、Javaゲートウェイ設定ファイルの説明を参照してください。

ポート10052はIANAregisteredではありません。

設定完了後、起動スクリプトを実行してJavaゲートウェイを起動できます。

$ ./startup.sh

同様にJavaゲートウェイが不要になったら、シャットダウンスクリプトを実行して停止できます。

$ ./shutdown.sh

サーバーやプロキシとは異なり、Javaゲートウェイは軽量であり、データベースを必要としません。

Java ゲートウェイで使用するためのサーバー設定

Java ゲートウェイが稼働している状態で、Zabbix サーバーに Zabbix Java ゲートウェイの場所を伝える必要があります。 これはサーバー設定ファイルでJavaGatewayおよびJavaGatewayPortパラメーターを指定することによって行われます。 JMX アプリケーションが実行されているホストが Zabbix プロキシによって監視されている場合は、代わりに プロキシ設定ファイル で接続パラメータを指定します。

JavaGateway=192.168.3.14
       JavaGatewayPort=10052

デフォルトでは、サーバーは JMX モニタリングに関連するプロセスを開始しません。 使用する場合は、事前にフォークされた Java ポーラーのインスタンスの数を指定する必要があります。 これは通常のポーラーとトラッパーを指定するのと同じ方法で行います。

StartJavaPollers=5

設定が完了したら、サーバーまたはプロキシを再起動してください。

Java ゲートウェイのデバッグ

Java ゲートウェイに問題がある場合、またはフロントエンドのアイテムについて表示されるエラー メッセージが十分でない場合は、Java ゲートウェイのログ ファイルを確認することをお勧めします。

デフォルトでは、Java ゲートウェイはそのアクティビティを /tmp/zabbix_java.log ファイルにログ レベル"info"で記録します。ですがその情報だけでは不十分な場合、ログ レベル"デバッグ"の情報を取得する必要があります。 ログ レベルを上げるには、lib/logback.xml ファイルを変更し、<root> タグの level 属性を"debug"に変更します。

<root level="debug">
         <appender-ref ref="FILE" />
       </root>

Zabbix サーバーや Zabbix プロキシとは異なり、logback.xml ファイルを変更した後に Zabbix Java ゲートウェイを再起動する必要はありません。logback.xml の変更は自動的に取得されます。 デバッグが完了したら、ログ レベルを "info" に戻すことができます。

別のファイルまたはデータベースのようなまったく別のメディアにログを記録する場合は、必要に応じて logback.xml ファイルを調整します。 詳細については、Logback マニュアル を参照してください。

デバッグ目的の場合、デーモンではなくコンソール アプリケーションとして Java ゲートウェイを起動すると便利な場合があります。 これを行うには、settings.sh で PID_FILE 変数をコメントアウトします。 PID_FILE を省略した場合、startup.sh スクリプトは Java ゲートウェイをコンソール アプリケーションとして起動し、代わりに Logback に lib/logback-console.xml ファイルを使用させます。これにより、コンソールにログが記録されるだけでなく、ログ レベル "debug" も有効になります。

最後に、Java ゲートウェイはロギングに SLF4J を使用するため、適切な JAR ファイルを lib ディレクトリに配置することで、Logback を選択したフレームワークに置き換えることができます。 詳細については、SLF4J マニュアル を参照してください。

JMX モニタリング

詳しくはJMX モニタリングページをご覧ください。