Pandora FMS Plugin JMX

Plugin para la monitorización de servidores de aplicaciones basadas en tecnología JMX.

Introducción

Ver.

Plugin para la monitorización de servidores de aplicaciones basadas en tecnología JMX.

Tipo: Plug-in de servidor

Matriz de compatibilidad

Desarrollado utilizando IBM WebSphere 8.5.5.13, y Weblogic 12.1.3.0.0 utilizando el agente
WAR Jolokia 1.5.0

Compatible con:

Websphere
Weblogic
Tomcat
WebSphere
JBoss
Kafka

Pre requisitos

Se requiere desplegar la aplicación Jolokia en el servidor de aplicaciones que queramos
monitorizar.

En el equipo que ejecutará el plugin, se requiere la instalación de las librerías jmx4perl .

Se realizan una serie de chequeos básicos “por defecto”, aunque se pueden
suprimir o personalizar.

Se dispone de una interfaz “abierta” para especificar consultas a Mbeans,
permitiendo gestionar la monitorización de los recursos Java.

Se requiere conexión con el servicio Tentacle asociado a su servidor de Pandora FMS (para
ejecuciones locales del plugin) bajo las siguientes condiciones:

● Si tiene as_server_plugin habilitado.
● Si tiene agent_per_instance habilitado.

El despliegue de este plugin por binarios no requiere ningún requisito especial.

Requiere la librería PandoraFMS::PluginTools.pm

Esta librería está disponible con la instalación del paquete Pandora FMS OpenSource.

Puede descargar la última versión de:

https://github.com/pandorafms/pandorafms/blob/develop/pandora_server/lib/PandoraFMS/PluginTools.pm

Configuración

 

INSTALACIÓN DE JOLOKIA

Descargue el agente Jolokia de la web oficial: https://jolokia.org/download.html

Securización del agente Jolokia (WAR)

Puede asignar políticas de seguridad para restringir tanto el acceso como el uso de las opciones disponibles en el agente Jolokia.

Estas restricciones pueden especificarse en un fichero XML de políticas. Este fichero está dividido en secciones con las que podrá controlar varios parámetros:

Restricciones basadas en IP
El acceso general puede ser permitido basándose en la dirección IP de un cliente HTTP. Esta restricción se especifica en la sección<remote> , contendrá elementos <host> . El origen puede ser una dirección IP, un nombre de host, o una red en formato CIDR.

El ejemplo siguiente permite el acceso desde localhost y todos los clientes de la red
10.0.0.0/16:

<remote>
<host>localhost</host>
<host>10.0.0.0/16</host>
</remote>

Restricciones de comandos

Puede restringir los comandos que se permitirán ejecutar de manera general, indicando aquellos que se permitan. Para ello se utilizará la sección <commands> especificando cada comando con un elemento <command> .

El ejemplo siguiente habilita los comandos READ, LIST, SEARCH y VERSION . El resto de comandos ( WRITE, EXEC ) no estarían disponibles:

<commands>
<command>read</command>
<command>list</command>
<command>version</command>
<command>search</command>
</commands>

Existen restricciones de consultas de mbeans y orígenes de peticiones. Puede consultar la ayuda completa en el siguiente enlace: https://jolokia.org/reference/html/security.html

Ejemplo de política de seguridad

En este ejemplo se permite la conexión desde localhost y la red 10.0.0.0/16. También se limitan los comandos disponibles a READ,LIST,VERSION y SEARCH

<?xml version="1.0" encoding="UTF-8"?>
<restrict>
<remote>
<host>127.0.0.1</host>
<host>localhost</host>
<host>10.0.0.0/16</host>
</remote>
<commands>
<command>read</command>
<command>list</command>
<command>version</command>
<command>search</command>
</commands>
<http>
<method>post</method>
</http>
</restrict>

Inclusión de una política de seguridad

Para reempaquetar una política en el archivo WAR del agente Jolokia deberá seguir los
siguientes pasos:

# Descargue el agente WAR
$ jolokia

Nota: Puede descargarlo manualmente de: http://search.maven.org/remotecontent?filepath=org/jolokia/jolokia-war/1.5.0/jolokiawar-1.5.0.war

# Descargue la plantilla de política de ejemplo
# en el directorio local como “jolokia-access.xml”
$ jolokia download --policy

Nota : Si ha recibido errores al ejecutar los pasos previos, puede descargar la política de ejemplo desde http://www.jolokia.org/templates/jolokia-access.xml

Edite la política y coloque el archivo jolokia-war-VERSION.war y el archivo jolokia-access.xml en el mismo directorio.

# Repack the to add the policy file 'jolokia-access.xml' form the cwd
$ jolokia repack --policy jolokia.war

Deberá recibir una salida similar a lo siguiente:

$ jolokia repack --policy jolokia-war-1.5.0.war
* Adding policy WEB-INF/classes/jolokia-access.xml to
jolokia-war-1.5.0.war

image-1626084627819.png

Puede realizar una verificación del contenido del fichero WAR con el siguiente comando:

# Show current state (policy file include: yes/no)
$ jolokia jolokia.war

Jolokia en WebSphere

Para instalar el proxy en IBM Websphere. Realizar los siguientes pasos:
Seleccione en el menú lateral:
Aplicaciones > Nueva aplicación

image-1626084718348.png

Seleccione el fichero WAR de Jolokia.

image-1626084740556.png

Pulse siguiente .

image-1626084759321.png

Mantenga las opciones por defecto y pulse siguiente.

image-1626084781286.png

Modifique el nombre de la aplicación por “jolokia”, no es necesario realizar más cambios en esta pantalla. Presione siguiente.

image-1626084805919.png

Active la casilla de verificación para mapear la nueva aplicación con el servidor deseado. Pulse siguiente.

image-1626084841984.png

Active la casilla de verificación para mapear el host virtual por defecto. Pulse siguiente.

image-1626084874603.png

Ajuste el contexto raíz de la aplicación a /jolokia
Pulse siguiente.
Verifique el resumen. Pulse finalizar.

image-1626084906736.png

Verifique en el log presentado que la aplicación se ha instalado satisfactoriamente. Si es así presione “Guardar directamente a la configuración master”.

La aplicación ya está desplegada. Deberemos iniciarla para poder interactuar con ella desde el plugin de JMX.

Navegue a la lista de aplicaciones y seleccione “Jolokia”.

image-1626084957590.png

Deberá recibir un mensaje indicando que la aplicación se inició correctamente:

image-1626084988980.png

Puede validar la instalación de Jolokia en el enlace siguiente:

https://localhost:9443/jolokia

Debe recibir una salida en formato JSON con información general del agente Jolokia.

image-1626085035783.png

Jolokia en WebSphere con seguridad habilitada

Para utilizar el plugin JMX para la extracción de datos de entornos IBM WebSphere con
seguridad habilitada, será necesario realizar modificaciones en la aplicación Jolokia (archivo
WAR).

Habilitar mapeo de seguridad para rol específico

Este paso agrega la información para el mapeo de roles al fichero jolokia.war, que
posteriormente desplegaremos en nuestro servidor de aplicaciones.

image-1626085239095.png

Configuración del servidor de aplicaciones IBM WebSphere

Será necesario crear un usuario con permisos para supervisión (monitor). Usuarios y grupos > Administrar usuarios > Crear usuario

image-1626085281629.png

Y asignarle el rol específico “Monitor”: Usuarios y grupos > Administrar roles de usuario > Agregar

image-1626085305510.png


Una vez creado el usuario y asignado el rol correcto, realizamos el mapeo en la configuración de la aplicación Jolokia:
Aplicaciones > Aplicaciones de empresa > Jolokia > Mapeo rol de seguridad a usuario/grupo

image-1626085336431.png

Una vez realizada la configuración, guarde los cambios y reinicie la aplicación Jolokia.

NOTA : Se ha confirmado que en versiones antiguas de IBM WebSphere, existe la necesidad
de realizar el mapeo de usuarios agregando el grupo TODOS al mapeo con rol supervisor:

Los cambios a realizar son:

Activar “todos” y “todos autenticados” en el mapeo JMX – usuario en la configuración de
Jolokia:

image-1626085387520.png


Enlazar las peticiones del grupo “Todos” en gestión de grupos:

image-1626085418644.png


Jolokia en Weblogic

Pasos previos

Para garantizar la funcionalidad completa del plugin JMX en Weblogic, deberá verificar una serie de configuraciones previas. Si decide omitir estos pasos la monitorización podría estar limitada.

Nota : Si sus necesidades de monitorización se limitan al listado de aplicaciones, estado, número de invocaciones, consumo de recursos y estado general del servidor de aplicaciones, puede ignorar esta sección.

Acceda a la pantalla de configuración de servidores en:

Dominio base > Entorno > Servidores

image-1626085520438.png


Presione Bloquear y editar para habilitar la edición de la configuración:

image-1626085563865.png


Haga clic sobre el servidor donde se desplegará la aplicación Jolokia:

image-1626085587237.png


Habilite IIOP

image-1626085613273.png


Presione guardar .
Seleccione Dominio base en el menú

image-1626085644466.png


En la pestaña de Seguridad, habilitar Anonymous Admin Lookup:

image-1626085680332.png


Despliegue de Jolokia

Acceda al apartado del menú
Estructura de dominio > Despliegues

image-1626085731601.png


En la pantalla que se le presenta, seleccione la opción Instalar

image-1626085769184.png


Seleccione el enlace upload your file(s) para mostrar el formulario de subida de ficheros:

image-1626085796012.png


Seleccione el archivo WAR de Jolokia de su equipo y pulse siguiente :

image-1626085822702.png

La ubicación se habrá completado con la ruta de subida del fichero WAR. Presione siguiente
para iniciar el proceso de instalación.

image-1626085854145.png


Seleccione el modelo de seguridad de roles personalizados y pulse siguiente .

image-1626085884993.png

Actualice el nombre del despliegue y mantenga la configuración propuesta.
Pulse siguiente .

image-1626085909696.png


Pulse Finalizar .
En este paso, la aplicación se encuentra desplegada en el servidor de aplicaciones JMX. En
la pestaña Configuración , seleccione el punto de entrada desde donde se atenderá el
servicio, configurando el “contexto raíz”:

image-1626085938347.png

image-1626085949006.png


Pulse guardar para salvar los cambios.

Presione Activar cambios para aplicar los cambios.

image-1626085985386.png


Una vez aplicados los cambios, se mostrará la aplicación Jolokia preparada para ser
iniciada:

image-1626086010612.png


Seleccione la casilla de verificación y pulse iniciar > Iniciar todas las peticiones

image-1626086042869.png


Tras el proceso de arranque, la aplicación aparecerá como Activa .

image-1626086069241.png


Edite el rol de seguridad de la aplicación para agregar las condiciones de acceso que desee (permitir grupos, usuarios, etc.)

image-1626086096261.png


image-1626086107619.png


Puede validar la instalación de Jolokia en el enlace siguiente:

https://localhost:7001/jolokia

Debe recibir una salida en formato JSON con información general del agente Jolokia.

image-1626086146811.png

Jolokia en Apache Kafka

Para monitorizar un servidor Apache Kafka se requiere el agente JVM Jolokia en vez del agente WAR. Basta con descargarlo de la página oficial:

https://jolokia.org/download.html

Sacamos el PID del servidor Apache Kafka:

image-1626086227024.png


Y relacionamos el agente JVM con el servidor mediante éste con

$ java –jar agente.jar start pid

Puede validar la instalación de Jolokia en el enlace siguiente:

http://localhost:8778/jolokia/

INSTALACIÓN DE JMX4PERL

En el equipo donde ejecutará el plugin JMX deberá instalar las librerías Perl necesarias:

JMX::Jmx4Perl
JMX::Jmx4Perl::Alias
JMX::Jmx4Perl::Request

Para instalar las librerías necesita conexión a internet y CPAN.

# cpan install JMX::Jmx4Perl

Aunque las aplicaciones siguientes son extremadamente útiles para explorar los mbean de nuestros servidores de aplicaciones, es posible que den conflicto por librerías o paquetes pendientes de instalar.

jmx4perl
check_jmx4perl
j4psh

En un entorno de producción recomendamos ignorar las sugerencias de aplicaciones adicionales e instalar únicamente la librería JMX::Jmx4Perl.

Responda no a todas las peticiones de instalación de componentes adicionales:

Install 'jmx4perl' ? (y/n) [y ]n
Install 'check_jmx4perl' ? (y/n) [y ]n
Install 'cacti_jmx4perl' ? (y/n) [y ]n
Install 'j4psh' ? (y/n) [y ]n

Ejecución manual

Para ejecutar el plugin configure el archivo de configuración según las instrucciones
precedentes.

Ejecución del plugin:

Versión código sin librerías desplegadas:

perl -I PandoraFMS pandora_plugin_jmx.pl jmx.conf

Donde, PandoraFMS es un directorio que contiene la librería PluginTools.pm

Nota: Si tiene desplegadas las librerías de PandoraFMS (opensource), no es necesario incluir el argumento -I PandoraFMS .

Configuración en Pandora

 

CONFIGURACIÓN

El fichero de configuración del plugin para monitorización de JMX se divide en bloques:

Datos de conexión

########################################################################
## Connection data
########################################################################
## URL endpoint of the target server
## Tomcat (example)
#server_url http://localhost:8080/jolokia
## Websphere (example)
#server_url http://localhost:49163/jolokia
## Weblogic (example)
#server_url http://192.168.70.237:7001/jolokia
## Product; product id of an specific technology
## (tomcat, jboss, weblogic, websphere, etc). By default the plugin uses autodetection
#product weblogic
## Timeout in seconds for an HTTP request (By default 180)
# timeout 180

server_url

Indica la dirección url donde está desplegada la aplicación Jolokia .

product

Se recomienda definir este campo, ya que el proceso de autodetección puede llevartiempo. Indique el producto que se va a monitorizar: tomcat, jboss, weblogic, websphere,etc.

Debug

########################################################################
## Others
########################################################################
## Plugin log output will be fully verbose (with debug information)
#debug 1

debug

Establezca el valor de este campo a 1 para ver información detallada en el log de ejecución del plugin. Por defecto en /tmp/pandora_jmx_plugin.log

Alcance de la monitorización

########################################################################
## Monitoring checks
########################################################################
## Server info checks
server_info
## OS info checks
os_info
## Monitor deployed web applications
webapp_info
## Include also monitoring for internal applications (console, consolehelp,...)
#include_internal_webapps 0
## This list will be used later by "servlets_list_info"
## check like a white list (only the following servlets will be checked)
## Tomcat monitoring
#use_only_servlets_begin
#WebModule=//localhost/examples,name=HelloWorldExample
#WebModule=//localhost/host-manager,name=HTMLHostManager
#WebModule=//localhost/examples,name=wsSnake
#use_only_servlets_end
## Websphere monitoring
#use_only_servlets_begin
#WebModule=DefaultCell01,name=jolokia_war
#WebModule=DefaultCell01,name=Helloworld_war
#use_only_servlets_end
## Weblogic monitoring
#use_only_servlets_begin
#WebModule=WL_PROXY,name=JspServlet
#use_only_servlets_end
# Servlets info
# (by default all Servlets deployed in the App server; will use use_only_servlets list
to restrict target Servlets checked)
#servlets_list_info
## Servlet monitoring, retrieve attributes from detected servlets
#servlet_attributes startTime loadTime,servletClass,requestCount,loadOnStartup

Puede configurar el plugin para reportar la información que necesite:

server_info

Generar módulos con información del servidor JMX (1) o no (0).

os_info

Agregar los módulos de monitorización del sistema operativo (1) o no (0).

webapp_info

Monitorizar las aplicaciones desplegadas en el servidor JMX (1) o no (0). Si combina este parámetro con agent_per_instance , se crearán tantos agentes como aplicaciones tenga desplegadas. Esta funcionalidad se ha comprobado con Weblogic únicamente, su
comportamiento puede no ser el esperado con otros servidores de aplicaciones.

include_internal_webapps

Incluir en la lista de aplicaciones web monitorizadas, las aplicaciones internas del servidor JMX (1) o no (0).

servlets_list_info

La monitorización basada en servlets nos permite recibir información de la disponibilidad de los mismos. Puede configurar servlets específicos a monitorizar especificando:

use_only_servlets_begin

Se restringirá la monitorización de servlets a los especificados línea a línea tras esta etiqueta.

use_only_servlets_end

Indica el final de la definición de servlets.

Nota: Si utiliza servlets_list_info y no define el bloque use_only_servlets se analizarán todos los servlets disponibles.

Inclusión de mbeans personalizados

########################################################################
## Request of specifics attributes
########################################################################
# Example 1: Get an specific parameter ("used") from "HeapMemoryUsage" attribute from
the MBean "java.lang:type=Memory"
mbean_check_begin
mbean_check_name MemoryUsed
mbean_check_type generic_data
mbean_check_module_group Module group
mbean_check_description In Bytes
mbean java.lang:type=Memory
attribute HeapMemoryUsage
path used
mbean_check_end
# Tomcat server specific checks
#include jmx.tomcat.conf
# Websphere server specific checks
#include jmx.websphere.conf
# Weblogic server specific checks
#include jmx.weblogic.conf
# Kafka server specific checks
#include jmx.kafka.conf

Puede definir sus propios chequeos para recuperar información específica de mbeans. Para ello, defina tantos bloques de chequeo como necesite:

mbean_check_begin

Especifica el inicio de un bloque de definición de chequeo de mbean específico.

mbean_check_name

Es el nombre del módulo tal y como aparecerá en Pandora FMS.

mbean_check_type

Indica el tipo de dato que se asignará al módulo en Pandora FMS.

mbean_check_module_group

Puede personalizar el grupo de módulo que se aplicará a los monitores generados por la extracción de datos del mbean.

mbean_check_description

Es la descripción del módulo tal y como aparecerá en Pandora FMS.

mbean

Configure aquí el mbean a consultar.

path

Indique el path donde se aloja el mbean que desea consultar.

mbean_check_wmin

Indica el límite inferior del umbral Warning para el módulo.

mbean_check_wmax

Indica el límite superior del umbral Warning para el módulo.

mbean_check_wstr

Indica el texto como umbral de Warning para módulos de tipo string.

mbean_check_winv

Invierte la dirección de los umbrales Warning del módulo.

mbean_check_cmin

Indica el límite inferior del umbral Critical para el módulo.

mbean_check_cmax

Indica el límite superior del umbral Critical para el módulo.

mbean_check_cstr

Indica el texto como umbral de Critical para módulos de tipo string.

mbean_check_cinv

Invierte la dirección de los umbrales Critical del módulo.

mbean_check_end

Especifica el final de un bloque de definición de chequeo de mbean específico.

 

Macro de detección dinámica de mbean _jokeritem_
Para poder monitorizar mbeans complejos, puede utilizar la macro _jokeritem_ de tal
manera que se generen tantos módulos como datos provea el mbean:

Ejemplo de configuración.

mbean_check_begin
mbean_check_name jms.messagescurrentcount._jokeritem_
mbean_check_module_group jvm.jms
mbean_check_type generic_data
mbean_check_description The current number of messages stored on this JMS server. This
number does not include the pending messages.
mbean com.bea:Name=_jokeritem_,ServerRuntime=_serverruntime_,Type=JMSServerRuntime
attribute MessagesCurrentCount
mbean_check_end

Macro para la selección de server runtime
Ahora es posible seleccionar el servidor de runtime objetivo dinámicamente utilizando la macro _serverruntime_ .

Ejemplo de configuración:

mbean
com.bea:Name=ThreadPoolRuntime,ServerRuntime=_serverruntime_,Type=ThreadPoolRuntime

include
Puede especificar tantos archivos de configuración extra como necesite.

Configuración de entrega de datos

########################################################################
## Request of all list of JMX information
## (Warning!!! this output is very very verbose, so use this check carefully)
########################################################################
#list_all_mbeans
## Report style
as_agent_plugin 0
agent_per_instance 1
## Custom header
module_header jmx_check_
## agent configuration
#agent_name custom_agent_name
#agent_interval 300
#agent_group JMX
## Pandora Server configuration
transfer_mode tentacle
tentacle_ip your.pandora.server.ip
tentacle_port 41121
tentacle_opts
tentacle_client "tentacle_client"
temp /tmp
local_folder /var/spool/pandora/data_in

Puede configurar la entrega de los datos en Pandora FMS de varias formas:

list_all_mbeans

Generará un módulo con una lista en texto con todos los mbeans disponibles.

as_agent_plugin

Si está activo (1), volcará toda la información de módulos por pantalla en formato
XML para ser ejecutado desde un agente. Si no lo está (0), entregará la información
transfiriendo XML completos al servidor configurado como destino.

agent_per_instance

Si está activo (1), enviará la información de instancias como agentes individuales a
Pandora FMS.

● Si la monitorización está basada exclusivamente en mbeans, se agruparán por
servlet.

● Si la monitorización se basa en aplicaciones web (webapp_info), se crearán tantos
agentes como aplicaciones web tenga desplegadas.

● Siempre se creará un agente que representa el propio servidor de aplicaciones.
Si está desactivado (0), se enviará toda la información de módulos en un único
agente (nombre del servidor de aplicaciones o el especificado en agent_name ).

module_header

Especifica una cabecera personalizada para los módulos generados por el plugin.

mode

Modo de transferencia de ficheros XML, puede ser:

● local: copia los ficheros a local_folder

● tentacle: transfiere los ficheros a tentacle_ip por tentacle_port

tentacle_ip

Dirección IP o FQDN donde Pandora FMS está trabajando.

tentacle_port

Puerto donde el servicio Tentacle asociado a su servidor Pandora FMS está
escuchando.

tentacle_opts

Opciones extra para el cliente Tentacle.

tentacle_client

Path donde encontrar el binario del cliente Tentacle.

local_folder

Ubicación donde mover los archivos en el modo local.

temp

Ubicación temporal donde almacenar los archivos antes de enviarlos.

Modulos generados por el plugin

La ejecución estándar de este plugin devolverá los siguientes módulos por defecto (con
todos los bloques opcionales habilitados):

Monitorización clásica:

Tomcat :

Active Sessions
Max Sessions Allowed
Configuración connector SSL
Connector State
JSP Count

 

Class Load Time
Servlet count allocated
Servlet load tim
Servlet class
Servlet request count
Servlet load on startup
Webmodule configured
Webmodule start time
Webmodule request count
Webmodule state name


Websphere :

Active sessions
Invalid Sessions
Create count
Close count
Allocate count
Fault count
Percent used
Uso medio de CPU por componente web
Cache size
Directorio home de Websphere
Módulos j2EE de un cierto componente web
Prevent Jre Memory Leaks
Detect App CLLeaks
Bootstrap port
ORB Request timeout
ORB Request Retries Count
Nivel de traza
Tamaño del buffer de trazas
Tamaño máximo del pool de hilos
Tamaño mínimo del pool de hilos
Inactivity Timeout




Weblogic :

Locked Users Current Count
Lockout Duration
Lockout Enabled
Invalid Login Attempts Total Count
Pool Max Capacity
Execution Time Average
Invocation Total Count
Diagnostics Read Count
Diagnostics Delete Count
Diagnostics Update Count
Diagnostics Create Count
Mbean Completed Requests
Mbean Bytes Received Count
Mbean Bytes Sent Count
Mbean Connections Count
Mbean Public URL
Mbean Messages Sent Count
Mbean Messages Received Count
Mbean Execution Time Average
Mbean Execution Time Total
Mbean Invocation Total Count
Servlet State
Servlet Server Startup Time
Servlet Execution Time Average
Servlet Reload Total Count
Servlet Execution Time High
Servlet Invocation Total Count
Webmodule status
Webmodule Open Sessions High Count
Webmodule Session Invalidation Interval Secs
Webmodule Sessions Opened Total Count
Webmodule Module Id

Kafka :

Active Controller Brokers
Broker leaders
Incoming Bytes per second
Incoming Messages per second
ISR expansion Rate
ISR shrink rate
Network processors avg idle time
Number of disputed leader elections rate
Offline Controller Brokers
Outgoing Bytes per second
Request handlers avg idle time
Requests in fetch API purgatory
Requests in producer API purgatory
System’s partitions
Total time to serve a specified request (fetch API consumer)
Total time to serve a specified request (fetch API follower)
Total time to serve a specified request
(producer API)
Unclear leader election rate
Under-replicated partitions


Ejemplo de monitorización de aplicaciones web

Esta monitorización específica es únicamente compatible con Weblogic en la versión 723
del plugin.

Con la siguiente configuración básica:

## Weblogic
server_url http://10.1.2.3:7001/jolokia
## product
product weblogic
# checks
server_info
os_info
webapp_info
include_internal_webapps 0
# Specific beans
mbean_check_begin
mbean_check_name MemoryUsed
mbean_check_type generic_data
mbean_check_description In Bytes
mbean java.lang:type=Memory
attribute HeapMemoryUsage
path used
mbean_check_end
## Report style
as_agent_plugin 0
agent_per_instance 1
## Agent personalization
agent_name my JMX appserver
agent_interval 300
agent_group JMX
## Pandora Server configuration
transfer_mode tentacle
tentacle_ip your.pandora.server.ip
tentacle_port 41121
tentacle_opts
tentacle_client "tentacle_client"
temp /tmp
local_folder /var/spool/pandora/data_in

Esta configuración devolverá los siguientes módulos (recuerde que se creará un agente por cada aplicación web que tenga desplegada en su servidor de aplicaciones).

Lista de módulos

Módulos asignados al agente principal (representa el propio servidor de aplicaciones)

check_jmx_server_name
check_jmx_server_vendor
check_jmx_memory_used
check_jmx_memory_alloc
check_jmx_memory_max
check_jmx_classes_loaded
check_jmx_classes_total
check_jmx_threads_current
check_jmx_threads_peak
check_jmx_runtime_name
check_jmx_jvm
check_jmx_jvm_startup
check_jmx_max_file_desc
check_jmx_file_desc_open
check_jmx_memory_used
check_jmx_MemoryUsed

Módulos asignados a cada uno de los agentes que representan las aplicaciones web
desplegadas:

APP_NAME State
APP_NAME InvocationTotalCount
APP_NAME ReloadTotalCount
APP_NAME Executiontimetotal
APP_NAME ExecutionTimeAverage
APP_NAME Status