Estoy tratando de implementar un plugin de nagios, y para hacerlo necesito saber específicamente qué objeto y atributo quiero monitorear. El caso es que no he podido encontrar una lista de objetos y atributos jmx del sistema estándar. ¿Alguien puede señalarme en la dirección correcta? Necesito monitorear cosas como grupos de memoria, tamaño de pila, etc.Lista de objetos y atributos JMX?
Respuesta
Siempre se puede usar mBeanServer.queryNames(null, null); para llegar a todas MBeans registrados en un determinado MBeanServer (donde mBeanServer
es el MBeanServerConnection
que obtuvo de forma local o remota).
Sin embargo, antes de implementar sus propios complementos de Nagios, ¿por qué no utilizar uno ya existente? P.ej. jmx4perlcheck_jmx4perl
que viene con herramientas para explorar el espacio de nombres JMX (como jmx4perl <url> list
para listar todos los MBeans JMX con sus atributos y operaciones o j4psh
un shell JMX basado en línea de lectura con finalización de línea de comandos sensible al contexto).
¿Está buscando la JVM platform MBean docs?
Existen ejemplos para obtener los MBeans e interrogarlos, p.
El ThreadMXBean plataforma MBean proporciona soporte para la monitorización hilo contención y CPU hilo tiempo.
Para ser honesto, no estoy seguro? Esperaba que hubiera algún tipo de "aquí hay una lista de cada objeto, y aquí hay una sublista de sus atributos de componentes". Tal vez estoy subestimando lo grande que es el material JMX estándar? – Matthew
http://download.oracle.com/javase/1.5.0/docs/api/java/lang/management/package-frame.html parecía ayudar mucho en realidad. ¿Hay algo similar para los otros granos MX? Lo siento si estas preguntas son más vagas de lo que deberían ser, no estoy del todo seguro sobre la semántica de JMX. – Matthew
Intenté usar jconsole pero no funciona en CLI (al menos da un montón de errores cuando intentas ejecutarlo). – Matthew
¿Qué tipo de errores? – helios
Es un montón de excepciones Java que indican que no se encuentra ningún servidor x. La mayoría de la documentación de jconsole apunta a la necesidad de usar una GUI. No puedo conectarme a la atmósfera del servidor para obtener una mejor explicación, publicaré las excepciones más adelante. – Matthew
Desde el punto de vista sysadmin, entiendo completamente las bases para la pregunta. La documentación estándar de JMX, o los objetos que se pueden encontrar al intentar explorar árboles de objetos JMX, puede ser abrumadora y confusa.
He encontrado este Op5 KB article bastante útil para proporcionar una descripción decente de JMX objetos de interés para JBoss.
Obviamente, uno necesita ajustarse para ajustarse al sistema de monitoreo que está usando en realidad, pero hay suficientes ejemplos para cualquier sistema de monitoreo basado en nagios.
Puede utilizar
Set mbeans = mBeanServer.queryNames(null, null);
for (Object mbean : mbeans)
{
WriteAttributes(mBeanServer, (ObjectName)mbean);
}
private void WriteAttributes(final MBeanServer mBeanServer, final ObjectName http)
throws InstanceNotFoundException, IntrospectionException, ReflectionException
{
MBeanInfo info = mBeanServer.getMBeanInfo(http);
MBeanAttributeInfo[] attrInfo = info.getAttributes();
System.out.println("Attributes for object: " + http +":\n");
for (MBeanAttributeInfo attr : attrInfo)
{
System.out.println(" " + attr.getName() + "\n");
}
}
Esto escribirá todos los nombres de objetos y sus atributos ...
Gracias! ¡Esto fue muy útil! – Neoryder
- 1. Cómo Obtener la lista de atributos de ArrayList de objetos
- 2. .NET Lista de atributos
- 3. Crear una lista de atributos de los objetos en Python
- 4. JMS y JMX tutoriales?
- 5. lista Extracto de los atributos de la lista de objetos en Python
- 6. ¿Cómo extraer de una lista de objetos una lista de atributos específicos?
- 7. Cómo verificar programáticamente las operaciones y los atributos de MBean JMX?
- 8. Java - asignar una lista de objetos a una lista con los valores de su propiedad atributos
- 9. diferencia entre JMX y RMI
- 10. Marco exportador JMX similar al exportador Spring JMX
- 11. Lista de atributos en eglCreateContext
- 12. Agregando atributos a los objetos de pitón
- 13. CSS y Javascript: Obtener una lista de atributos CSS personalizada
- 14. Python: ordenación de lista con múltiples atributos y orden mixto
- 15. Lista de atributos disponibles para http://axschema.org y http://schemas.openid.net
- 16. Monitorización JMX con Zabbix
- 17. jmx mbean thread safety
- 18. Lista de objetos en httpcontext.current.cache
- 19. Conexión JMX remota
- 20. Restricción de JMX a localhost
- 21. Imprimir una lista de objetos
- 22. python: atributos de clase y atributos de instancia
- 23. Eliminar objetos duplicados en una lista (C#)
- 24. ¿Cómo bucleo en una lista y acceso a nombres y atributos?
- 25. El uso de JMX y cómo utilizar las aplicaciones existentes
- 26. Ordenar una lista por atributos múltiples?
- 27. Cómo convertir/convertir Lista de objetos a cola de objetos
- 28. elemento de la lista contiene objetos de otra lista
- 29. iterar sobre atributos de los objetos en Java
- 30. Usando LINQ, seleccione la lista de objetos dentro de otra lista de objetos
Ah bien, hemos estado buscando en check_jmx, que ya está creado. Buscaré en jmx4perl. ¡Gracias! – Matthew