Установка из исходных кодов

Обзор

Если установлен из исходных кодов, следующая информация поможет вам в настройке Zabbix Java gateway.

Обзор файлов

Если вы получили Java gateway из исходных кодов, у вас должен был получиться набор shell-скриптов, JAR-файлов и файлов конфигурации в $PREFIX/sbin/zabbix_java. Назначение этих файлов приведено ниже.

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

Сам JAR-файл Java gateway.

lib/logback-core-1.5.16.jar
lib/logback-classic-1.5.16.jar
lib/slf4j-api-2.0.16.jar
lib/android-json-4.3_r3.1.jar

Зависимости Java gateway: библиотека Logback, SLF4J и Android JSON.

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

Файлы конфигурации для Logback.

shutdown.sh  
startup.sh

Удобные скрипты для запуска и остановки Java gateway.

settings.sh

Файл конфигурации, который подключается указанными выше скриптами startup и shutdown.

Настройка и запуск Java gateway

По умолчанию Java gateway прослушивает порт 10052. Если вы планируете запускать Java gateway на другом порту, вы можете указать это в скрипте settings.sh. См. описание файла конфигурации Java gateway, чтобы узнать, как задать этот и другие параметры.

После того как вы настроите параметры, вы можете запустить Java gateway, выполнив скрипт startup.sh:

./startup.sh

Аналогично, когда Java gateway больше не нужен, выполните скрипт shutdown.sh, чтобы остановить его:

./shutdown.sh

Обратите внимание, что в отличие от сервера или прокси, Java gateway является легковесным и не требует базы данных.

Настройка сервера для использования с Java gateway

После запуска Java gateway необходимо указать серверу Zabbix, где найти Zabbix Java gateway. Для этого в файле конфигурации сервера задаются параметры JavaGateway и JavaGatewayPort. Если узел сети, на котором работает приложение JMX, контролируется через прокси Zabbix, то параметры подключения следует указывать в файле конфигурации прокси.

JavaGateway=192.168.3.14
JavaGatewayPort=10052

По умолчанию сервер не запускает никаких процессов, связанных с мониторингом JMX. Однако если вы хотите использовать его, необходимо указать количество предварительно порожденных экземпляров Java pollers. Это делается так же, как и при указании обычных pollers и trappers.

StartJavaPollers=5

Не забудьте перезапустить сервер или прокси после завершения настройки.

Отладка Java gateway

Если возникают какие-либо проблемы с Java gateway или сообщение об ошибке, которое вы видите для элемента данных на веб-интерфейсе, недостаточно информативно, возможно, вам стоит посмотреть файл журнала Java gateway.

По умолчанию Java gateway записывает свою активность в файл /tmp/zabbix_java.log с уровнем журналирования "info". Иногда этой информации недостаточно, и требуется информация с уровнем журналирования "debug". Чтобы повысить уровень журналирования, измените файл lib/logback.xml и установите для атрибута level тега <root> значение debug:

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

Обратите внимание, что в отличие от сервера Zabbix или прокси Zabbix, после изменения файла logback.xml перезапускать Zabbix Java gateway не требуется - изменения в logback.xml будут подхвачены автоматически. Когда отладка будет завершена, вы можете вернуть уровень журналирования на "info".

Если вы хотите вести журнал в другой файл или в совершенно другой носитель, например в базу данных, настройте файл logback.xml в соответствии со своими потребностями. Подробнее см. Руководство Logback.

Иногда для целей отладки полезно запускать Java gateway как консольное приложение, а не как демон. Для этого закомментируйте переменную PID_FILE в settings.sh. Если PID_FILE опущена, сценарий startup.sh запускает Java gateway как консольное приложение и заставляет Logback использовать файл lib/logback-console.xml вместо этого, что не только ведет журнал в консоль, но и включает уровень журналирования "debug".

Наконец, обратите внимание, что поскольку Java gateway использует SLF4J для журналирования, вы можете заменить Logback на любой другой фреймворк по своему выбору, поместив соответствующий JAR-файл в каталог lib. Подробнее см. Руководство SLF4J.

Мониторинг JMX

См. страницу Мониторинг JMX для получения более подробной информации.