oracle / weblogic-monitoring-exporter

WebLogic Monitoring Exporter exposes metrics and monitoring data through REST APIs for consumption by other tools (e.g. Prometheus)
Universal Permissive License v1.0
105 stars 80 forks source link

Include Support for JVM memory pool metrics #419

Open Nirzak opened 2 months ago

Nirzak commented 2 months ago

The exporter is great and almost all useful metrics related to WebLogic are being exported. However, it will be great if we can export jvm memory pool related metrics using this exporter. I mean the following means

java.lang:name=CodeHeap 'non-nmethods',type=MemoryPool
java.lang:name=CodeHeap 'non-profiled nmethods',type=MemoryPool
java.lang:name=CodeHeap 'profiled nmethods',type=MemoryPool
java.lang:name=Compressed Class Space,type=MemoryPool
java.lang:name=G1 Eden Space,type=MemoryPool
java.lang:name=G1 Old Gen,type=MemoryPool
java.lang:name=G1 Old Generation,type=GarbageCollector
java.lang:name=G1 Survivor Space,type=MemoryPool
java.lang:name=G1 Young Generation,type=GarbageCollector
java.lang:name=Metaspace Manager,type=MemoryManager
java.lang:name=Metaspace,type=MemoryPool
java.lang:type=ClassLoading
java.lang:type=Memory
java.lang:type=OperatingSystem
java.lang:type=Runtime
java.lang:type=Threading

Typically jmx exporter can export them automatically. I hope WebLogic Monitoring Exporter will also include them in the future. Thanks.

ddsharpe commented 2 months ago

JVMRuntimeMBean is a WebLogic Server runtime metrics bean, so it should be available to the exporter. https://docs.oracle.com/middleware/1212/wls/WLMBR/core/index.html. I will try to verify.

ddsharpe commented 2 months ago

Unfortunately, all WLS exposes from the JVM is documented here: https://docs.oracle.com/en/middleware/standalone/weblogic-server/14.1.1.0/wlapi/weblogic/management/runtime/JVMRuntimeMBean.html There is an example of how to use the JVMRuntimeMBean in the samples: https://github.com/oracle/weblogic-monitoring-exporter/blob/main/samples/configurations/jvm.yml Unfortunately, the other items you listed are not currently exposed. We will look into including these in a future release.

Nirzak commented 2 months ago

Unfortunately, all WLS exposes from the JVM is documented here: https://docs.oracle.com/en/middleware/standalone/weblogic-server/14.1.1.0/wlapi/weblogic/management/runtime/JVMRuntimeMBean.html There is an example of how to use the JVMRuntimeMBean in the samples: https://github.com/oracle/weblogic-monitoring-exporter/blob/main/samples/configurations/jvm.yml Unfortunately, the other items you listed are not currently exposed. We will look into including these in a future release.

Ok thanks a lot.