--- /dev/null
+# contrib/GenericJMX.conf
+# -----------------------
+#
+# This is an example config file for the ‘GenericJMX’ plugin, a plugin written
+# in Java to receive values via the “Java Management Extensions” (JMX). The
+# plugin can be found in the
+# bindings/java/org/collectd/java/
+# directory of the source distribution.
+#
+# This sample config defines a couple of <MBean /> blocks which query MBeans
+# provided by the JVM itself, i. e. which should be available for all Java
+# processes. The following MBean blocks are defined:
+#
+# +-------------------+------------------------------------------------+
+# ! Name ! Description !
+# +-------------------+------------------------------------------------+
+# ! classes ! Number of classes being loaded. !
+# ! compilation ! Time spent by the JVM compiling or optimizing. !
+# ! garbage_collector ! Number of garbage collections and time spent. !
+# ! memory ! Generic heap/nonheap memory usage. !
+# ! memory_pool ! Memory usage by memory pool. !
+# +-------------------+------------------------------------------------+
+#
+<Plugin "java">
+ LoadPlugin "org.collectd.java.GenericJMX"
+
+ <Plugin "GenericJMX">
+ ################
+ # MBean blocks #
+ ################
+ # Number of classes being loaded.
+ <MBean "classes">
+ ObjectName "java.lang:type=ClassLoading"
+ #InstancePrefix ""
+ #InstanceFrom ""
+
+ <Value>
+ Type "gauge"
+ Table false
+ Attribute "LoadedClassCount"
+ InstancePrefix "loaded_classes"
+ </Value>
+ </MBean>
+
+ # Time spent by the JVM compiling or optimizing.
+ <MBean "compilation">
+ ObjectName "java.lang:type=Compilation"
+ #InstancePrefix ""
+ #InstanceFrom ""
+
+ <Value>
+ Type "total_time_in_ms"
+ Table false
+ Attribute "TotalCompilationTime"
+ InstancePrefix "compilation_time"
+ </Value>
+ </MBean>
+
+ # Garbage collector information
+ <MBean "garbage_collector">
+ # Plugin instance:
+ InstancePrefix "gc-"
+ InstanceFrom "name"
+ ObjectName "java.lang:type=GarbageCollector,name=*"
+
+ <Value>
+ Type "invocations"
+ Table false
+ Attribute "CollectionCount"
+ # Type instance:
+ #InstancePrefix ""
+ </Value>
+
+ <Value>
+ Type "total_time_in_ms"
+ Table false
+ Attribute "CollectionTime"
+ # Type instance:
+ InstancePrefix "collection_time"
+ </Value>
+
+# # Not that useful, therefore commented out.
+# <Value>
+# Type "threads"
+# Table false
+# # Demonstration how to access composite types
+# Attribute "LastGcInfo.GcThreadCount"
+# # Type instance:
+# #InstancePrefix ""
+# </Value>
+ </MBean>
+
+ # Generic heap/nonheap memory usage.
+ <MBean "memory">
+ ObjectName "java.lang:type=Memory"
+ #InstanceFrom ""
+ InstancePrefix "memory"
+
+ # Creates four values: committed, init, max, used
+ <Value>
+ Type "memory"
+ Table true
+ Attribute "HeapMemoryUsage"
+ # Type instance:
+ InstancePrefix "heap-"
+ </Value>
+
+ # Creates four values: committed, init, max, used
+ <Value>
+ Type "memory"
+ Table true
+ Attribute "NonHeapMemoryUsage"
+ # Type instance:
+ InstancePrefix "nonheap-"
+ </Value>
+ </MBean>
+
+ # Memory usage by memory pool.
+ <MBean "memory_pool">
+ ObjectName "java.lang:type=MemoryPool,name=*"
+ InstancePrefix "memory_pool-"
+ InstanceFrom "name"
+
+ <Value>
+ Type "memory"
+ Table true
+ Attribute "Usage"
+ #InstancePrefix ""
+ </Value>
+ </MBean>
+
+ #####################
+ # Connection blocks #
+ #####################
+ <Connection>
+ Host "localhost"
+ ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:17264/jmxrmi"
+ Collect "classes"
+ Collect "compilation"
+ Collect "garbage_collector"
+ Collect "memory"
+ Collect "memory_pool"
+ </Connection>
+ </Plugin>
+</Plugin>