JMX metrics not being logged
Expected behavior
JMX metrics to be logged into application insights if specified in applicationinsights.json
Actual behavior
No logs captured for the JMX metrics specified.
Jmx Metrics
"jmxMetrics": [
{
"Name": "Menu Locks Active Locks",
"ObjectName": "com.xxx.p2j:name=menu.locks",
"Attribute": "ActiveLocks"
},
{
"Name": "Menu Locks Deletes From VST",
"ObjectName": "com.xxx.p2j:name=menu.locks",
"Attribute": "DeletesFromVST"
},
{
"Name": "Menu Locks Lock Events",
"ObjectName": "com.xxx.p2j:name=menu.locks",
"Attribute": "LockEvents"
},
{
"Name": "Menu Locks Persist Calls",
"ObjectName": "com.xxx.p2j:name=menu.locks",
"Attribute": "PersistCalls"
}
]
System information
Please provide the following information:
- SDK Version: 3.7.2
- OS type and version: Ubuntu 22.02
- Application Server type and version (if applicable):
- Using spring-boot?
- Additional relevant libraries (with version, if applicable):
Details
Java Process
$ ps aux | grep java
fwd 1228 9.5 22.8 12629524 3729156 ? Sl 11:09 5:16 java -XX:GCTimeRatio=19 -XX:MaxTenuringThreshold=7 -XX:StringTableSize=1000003 -Xmx8192m -server -Dcom.sun.management.jmxremote -Dc om.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=22100 -Dcom.sun.management.jmxremote.rmi.port=22100 -XX:+PrintGCDetails -v erbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:server_garbage_collection_stats.log -javaagent:/opt/counteract/lib/applicationinsights-agent.jar
Jstat confirming its monitoring
$ jstat -gc 1228
S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT CGC CGCT GCT
67072.0 67584.0 0.0 35103.4 222720.0 12281.4 2516480.0 2016039.3 121984.0 117666.9 14464.0 13423.7 227 18.764 18 41.705 - - 60.4 69
Info on MBean
$>info
#mbean = com.xxx.p2j:name=menu.locks
#class name = com.goldencode.p2j.jmx.LockTableUpdaterStat
# attributes
%0 - ActiveLocks (long, r)
%1 - DeletesFromVST (long, r)
%2 - LockEvents (long, r)
%3 - PersistCalls (long, r)
%4 - PersistedLocks (long, r)
# operations
%0 - void flush()
Logs
2025-05-27 13:39:58.145+01:00 DEBUG c.m.a.a.i.c.ConfigurationBuilder - configuration: {"selfDiagnostics":{"level":"debug"},"preview":{"generalExportQueueCapacity":4096},"connectionString":"InstrumentationKey=************************;IngestionEndpoint=https://uksouth-1.in.applicationinsights.azure.com/;LiveEndpoint=https://uksouth.livediagnostics.monitor.azure.com/;ApplicationId=****************************************"}
2025-05-27 13:39:58.166+01:00 INFO c.m.a.a.i.c.ConfigurationBuilder - Some telemetry may be sampled out because a default sampling configuration was added in version 3.4.0 to reduce the default billing cost. You can set the sampling configuration explicitly: https://learn.microsoft.com/azure/azure-monitor/app/java-standalone-config#sampling
2025-05-27 13:39:58.181+01:00 DEBUG c.m.applicationinsights.agent - Input arguments: [-XX:GCTimeRatio=19, -XX:MaxTenuringThreshold=7, -XX:StringTableSize=1000003, -Xmx8192m, -javaagent:/opt/counteract/lib/applicationinsights-agent.jar, -Djava.locale.providers=SPI,JRE, -Djava.ext.dirs=/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext:../lib/spi]
2025-05-27 13:39:58.181+01:00 DEBUG c.m.applicationinsights.agent - _JAVA_OPTIONS: null
2025-05-27 13:39:58.181+01:00 DEBUG c.m.applicationinsights.agent - JAVA_TOOL_OPTIONS: null
2025-05-27 13:40:00.040+01:00 INFO c.a.c.h.n.i.NettyUtility - {"az.sdk.message":"The following Netty versions were found on the classpath and have a mismatch with the versions used by azure-core-http-netty. If your application runs without issue this message can be ignored, otherwise please align the Netty versions used in your application. For more information, see https://aka.ms/azsdk/java/dependency/troubleshoot.","azure-netty-version":"4.1.115.Final","azure-netty-native-version":"2.0.69.Final","classpath-netty-version-io.netty:netty-common":"unknown (not found and is required)","classpath-netty-version-io.netty:netty-handler":"unknown (not found and is required)","classpath-netty-version-io.netty:netty-handler-proxy":"4.1.118.Final","classpath-netty-version-io.netty:netty-buffer":"unknown (not found and is required)","classpath-netty-version-io.netty:netty-codec":"unknown (not found and is required)","classpath-netty-version-io.netty:netty-codec-http":"unknown (not found and is required)","classpath-netty-version-io.netty:netty-codec-http2":"unknown (not found and is required)"}
2025-05-27 13:40:00.478+01:00 INFO c.a.c.i.ReflectionUtilsMethodHandle - Unable to create MethodHandles to use Java 9+ MethodHandles.privateLookupIn. Will attempt to fallback to using the package-private constructor.
2025-05-27 13:40:00.526+01:00 DEBUG c.m.applicationinsights.agent - connection string is not null, start HeartbeatExporter
2025-05-27 13:40:00.720+01:00 WARN i.o.s.a.ResourceConfiguration - Found reference to io.opentelemetry.sdk.autoconfigure.internal.EnvironmentResourceProvider in otel.java.enabled.resource.providers. Please update to io.opentelemetry.sdk.autoconfigure.EnvironmentResourceProvider. Support for the old provider name will be removed after 1.49.0.
2025-05-27 13:40:03.995+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(AnnotationInstrumentationModule#WithSpanInstrumentation((not(name(startsWith(kotlin.coroutines.))) and declaresMethods(whereOne((declaresAnnotations(whereOne(ofAnnotationType(name(equals(io.opentelemetry.instrumentation.annotations.WithSpan))))) and returns(erasure(is(class java.lang.Object))) and io.opentelemetry.javaagent.instrumentation.instrumentationannotations.KotlinCoroutineUtil$$Lambda$293/822359325@108531c2 and not(false))))))) or false)
2025-05-27 13:40:03.996+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(AnnotationInstrumentationModule#WithSpanInstrumentation(declaresMethods(whereOne(declaresAnnotations(whereOne(ofAnnotationType(name(equals(io.opentelemetry.instrumentation.annotations.WithSpan))))))))) or false)
2025-05-27 13:40:03.996+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(AnnotationInstrumentationModule#AddingSpanAttributesInstrumentation(declaresMethods(whereOne((declaresAnnotations(whereOne(ofAnnotationType(name(equals(io.opentelemetry.instrumentation.annotations.AddingSpanAttributes))))) and not(declaresAnnotations(whereOne(ofAnnotationType(name(equals(io.opentelemetry.instrumentation.annotations.WithSpan))))))))))) or false)
2025-05-27 13:40:03.998+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(WithSpanInstrumentationModule#WithSpanInstrumentation(declaresMethods(whereOne(declaresAnnotations(whereOne(ofAnnotationType(name(equals(io.opentelemetry.extension.annotations.WithSpan))))))))) or false)
2025-05-27 13:40:03.999+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(JaxrsInstrumentationModule#JaxrsAnnotationsInstrumentation(safeHasSuperType(safeErasure((declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.ws.rs.Path))))) or declaresMethods(whereOne(declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.ws.rs.Path)))))))))))) or false)
2025-05-27 13:40:03.999+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(JaxrsAnnotationsInstrumentationModule#JaxrsAnnotationsInstrumentation(safeHasSuperType(safeErasure((declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.ws.rs.Path))))) or declaresMethods(whereOne(declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.ws.rs.Path)))))))))))) or false)
2025-05-27 13:40:04.000+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(JaxrsAnnotationsInstrumentationModule#JaxrsAnnotationsInstrumentation(safeHasSuperType(safeErasure((declaresAnnotations(whereOne(ofAnnotationType(name(equals(jakarta.ws.rs.Path))))) or declaresMethods(whereOne(declaresAnnotations(whereOne(ofAnnotationType(name(equals(jakarta.ws.rs.Path)))))))))))) or false)
2025-05-27 13:40:04.000+01:00 DEBUG n.b.agent.builder.AgentBuilderUtil - Could not decompose matcher failSafe(try(JwsInstrumentationModule#JwsAnnotationsInstrumentation((safeHasSuperType(safeErasure(declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.jws.WebService))))))) or declaresAnnotations(whereOne(ofAnnotationType(name(equals(javax.jws.WebService)))))))) or false)
2025-05-27 13:40:05.676+01:00 DEBUG c.a.m.o.a.i.quickpulse.QuickPulse - Initializing QuickPulse with instrumentation key: **************, URL https://uksouth.livediagnostics.monitor.azure.com/, rolename null, role instance c-act, sdk version 3.7.1
2025-05-27 13:40:06.035+01:00 DEBUG c.a.m.o.a.i.q.f.FilteringConfiguration - Initializing an empty live metrics filtering configuration - did not yet receive a configuration from ping or post.
2025-05-27 13:40:06.141+01:00 DEBUG c.a.m.o.a.i.q.QuickPulseCoordinator - QuickPulseDataSender initialized with endpointUrl: https://uksouth.livediagnostics.monitor.azure.com/, instrumentationKey: ******************************
2025-05-27 13:40:06.149+01:00 DEBUG c.a.m.o.a.i.q.QuickPulsePingSender - About to ping quickpulse with the endpoint prefix: https://uksouth.livediagnostics.monitor.azure.com/
2025-05-27 13:40:22.034+01:00 INFO c.m.applicationinsights.agent - Application Insights Java Agent 3.7.1 started successfully (PID 1219, JVM running for 41.218 s)
2025-05-27 13:40:22.034+01:00 INFO c.m.applicationinsights.agent - Java version: 1.8.0_442, vendor: Private Build, home: /usr/lib/jvm/java-8-openjdk-amd64/jre
2025-05-27 13:40:28.670+01:00 DEBUG c.a.m.o.a.i.q.QuickPulsePingSender - About to ping quickpulse with the endpoint prefix: https://uksouth.livediagnostics.monitor.azure.com/
hi @s21-himesh, can you see if this helps? https://learn.microsoft.com/en-us/azure/azure-monitor/app/java-jmx-metrics-configuration#how-do-i-know-what-metrics-are-available-to-configure
Hi @trask,
I can confirm this is the page used to understand what changes I needed to make to try get this to work.
I've also tried the troubleshoot here: https://github.com/microsoft/ApplicationInsights-Java/wiki/Troubleshoot-JMX-metrics
can you include the output from the debug log that shows all of the JMX metrics that were found?
Hi @trask
Metrics found below:-
2025-05-22 16:11:49.684+01:00 INFO c.m.a.a.i.p.AvailableJmxMetricLogger - available jmx metrics:
- object name: com.xxx.p2j:name=menu.locks
attributes: ActiveLocks (number), DeletesFromVST (number), LockEvents (number), PersistCalls (number), PersistedLocks (number)
- object name: com.xxx.p2j:name=ThreadsCpuUtilization
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=TMRollback
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OutputTableHandleCopier
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=MemoryPool,name=PS Survivor Space
attributes: CollectionUsage.committed (number), CollectionUsage.init (number), CollectionUsage.max (number), CollectionUsage.used (number), CollectionUsageThreshold (number), CollectionUsageThresholdCount (number), CollectionUsageThresholdExceeded (boolean), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (exception), UsageThresholdCount (exception), UsageThresholdExceeded (exception), UsageThresholdSupported (boolean), Valid (boolean)
- object name: JMImplementation:type=MBeanServerDelegate
attributes: ImplementationName (string), ImplementationVendor (string), ImplementationVersion (string), MBeanServerId (string), SpecificationName (string), SpecificationVendor (string), SpecificationVersion (number)
- object name: java.lang:type=Runtime
attributes: BootClassPath (string), BootClassPathSupported (boolean), ClassPath (string), InputArguments (other), LibraryPath (string), ManagementSpecVersion (number), Name (string), ObjectName (other), SpecName (string), SpecVendor (string), SpecVersion (number), StartTime (number), SystemProperties (other), Uptime (number), VmName (string), VmVendor (string), VmVersion (string)
- object name: com.xxx.p2j:name=objToByteArray
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=Threading
attributes: AllThreadIds (other), CurrentThreadAllocatedBytes (number), CurrentThreadCpuTime (number), CurrentThreadCpuTimeSupported (boolean), CurrentThreadUserTime (number), DaemonThreadCount (number), ObjectMonitorUsageSupported (boolean), ObjectName (other), PeakThreadCount (number), SynchronizerUsageSupported (boolean), ThreadAllocatedMemoryEnabled (boolean), ThreadAllocatedMemorySupported (boolean), ThreadContentionMonitoringEnabled (boolean), ThreadContentionMonitoringSupported (boolean), ThreadCount (number), ThreadCpuTimeEnabled (boolean), ThreadCpuTimeSupported (boolean), TotalStartedThreadCount (number), TotalThreadAllocatedBytes (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Base
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=NetworkReads
attributes: Annotation (string), Count (number), Enabled (boolean), Total (number)
- object name: java.lang:type=MemoryPool,name=Metaspace
attributes: CollectionUsage.committed (unexpected: null), CollectionUsage.init (unexpected: null), CollectionUsage.max (unexpected: null), CollectionUsage.used (unexpected: null), CollectionUsageThreshold (exception), CollectionUsageThresholdCount (exception), CollectionUsageThresholdExceeded (exception), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (number), UsageThresholdCount (number), UsageThresholdExceeded (boolean), UsageThresholdSupported (boolean), Valid (boolean)
- object name: java.lang:type=MemoryManager,name=CodeCacheManager
attributes: MemoryPoolNames (other), Name (string), ObjectName (other), Valid (boolean)
- object name: java.lang:type=MemoryPool,name=Compressed Class Space
attributes: CollectionUsage.committed (unexpected: null), CollectionUsage.init (unexpected: null), CollectionUsage.max (unexpected: null), CollectionUsage.used (unexpected: null), CollectionUsageThreshold (exception), CollectionUsageThresholdCount (exception), CollectionUsageThresholdExceeded (exception), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (number), UsageThresholdCount (number), UsageThresholdExceeded (boolean), UsageThresholdSupported (boolean), Valid (boolean)
- object name: com.xxx.p2j:name=OrmCreateDynamicBuffer
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.mchange.v2.c3p0:type=C3P0Registry
attributes: AllIdentityTokenCount (number), AllIdentityTokenized (other), AllIdentityTokenizedCount (number), AllIdentityTokenizedStringified (other), AllIdentityTokens (other), AllPooledDataSources (other), AllPooledDataSourcesCount (number), AllPooledDataSourcesStringified (other), C3p0Version (string), NumPooledDataSources (number), NumPoolsAllDataSources (number)
- object name: com.xxx.p2j:name=WidgetAttrFlushes
attributes: Annotation (string), Count (number), Enabled (boolean), Total (number)
- object name: java.lang:type=ClassLoading
attributes: LoadedClassCount (number), ObjectName (other), TotalLoadedClassCount (number), UnloadedClassCount (number), Verbose (boolean)
- object name: java.lang:type=MemoryPool,name=PS Eden Space
attributes: CollectionUsage.committed (number), CollectionUsage.init (number), CollectionUsage.max (number), CollectionUsage.used (number), CollectionUsageThreshold (number), CollectionUsageThresholdCount (number), CollectionUsageThresholdExceeded (boolean), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (exception), UsageThresholdCount (exception), UsageThresholdExceeded (exception), UsageThresholdSupported (boolean), Valid (boolean)
- object name: com.xxx.p2j:name=QueryCounter
attributes: ReadQueriesCount (number), WriteQueriesCount (number)
- object name: com.xxx.p2j:name=OrmDynamicDataSetParam
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=sslSend
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.mchange.v2.c3p0:type=PooledDataSource,identityToken=1bqrg1vba1wyoftbudlzxn|feb57b4,name=1bqrg1vba1wyoftbudlzxn|feb57b4
attributes: acquireIncrement (number), acquireRetryAttempts (number), acquireRetryDelay (number), allUsers (other), autoCommitOnClose (boolean), automaticTestTable (other), breakAfterAcquireFailure (boolean), checkoutTimeout (number), connectionCustomizerClassName (other), connectionTesterClassName (string), contextClassLoaderSource (string), dataSourceName (string), debugUnreturnedConnectionStackTraces (boolean), description (other), driverClass (string), effectivePropertyCycleDefaultUser (number), extensions (other), factoryClassLocation (other), forceIgnoreUnresolvedTransactions (boolean), forceSynchronousCheckins (boolean), forceUseNamedDriverClass (boolean), identityToken (string), idleConnectionTestPeriod (number), initialPoolSize (number), jdbcUrl (string), loginTimeout (number), maxAdministrativeTaskTime (number), maxConnectionAge (number), maxIdleTime (number), maxIdleTimeExcessConnections (number), maxPoolSize (number), maxStatements (number), maxStatementsPerConnection (number), minPoolSize (number), numBusyConnections (number), numBusyConnectionsAllUsers (number), numBusyConnectionsDefaultUser (number), numConnections (number), numConnectionsAllUsers (number), numConnectionsDefaultUser (number), numFailedCheckinsDefaultUser (number), numFailedCheckoutsDefaultUser (number), numFailedIdleTestsDefaultUser (number), numHelperThreads (number), numIdleConnections (number), numIdleConnectionsAllUsers (number), numIdleConnectionsDefaultUser (number), numThreadsAwaitingCheckoutDefaultUser (number), numUnclosedOrphanedConnections (number), numUnclosedOrphanedConnectionsAllUsers (number), numUnclosedOrphanedConnectionsDefaultUser (number), numUserPools (number), overrideDefaultPassword (other), overrideDefaultUser (other), parentLogger (other), preferredTestQuery (other), privilegeSpawnedThreads (boolean), propertyChangeListeners (other), propertyCycle (number), startTimeMillisDefaultUser (number), statementCacheNumCheckedOutDefaultUser (number), statementCacheNumCheckedOutStatementsAllUsers (number), statementCacheNumConnectionsWithCachedStatementsAllUsers (number), statementCacheNumConnectionsWithCachedStatementsDefaultUser (number), statementCacheNumDeferredCloseThreads (number), statementCacheNumStatementsAllUsers (number), statementCacheNumStatementsDefaultUser (number), statementDestroyerNumActiveThreads (number), statementDestroyerNumConnectionsInUseAllUsers (number), statementDestroyerNumConnectionsInUseDefaultUser (number), statementDestroyerNumConnectionsWithDeferredDestroyStatementsAllUsers (number), statementDestroyerNumConnectionsWithDeferredDestroyStatementsDefaultUser (number), statementDestroyerNumDeferredDestroyStatementsAllUsers (number), statementDestroyerNumDeferredDestroyStatementsDefaultUser (number), statementDestroyerNumIdleThreads (number), statementDestroyerNumTasksPending (number), statementDestroyerNumThreads (number), testConnectionOnCheckin (boolean), testConnectionOnCheckout (boolean), threadPoolNumActiveThreads (number), threadPoolNumIdleThreads (number), threadPoolNumTasksPending (number), threadPoolSize (number), unreturnedConnectionTimeout (number), upTimeMillisDefaultUser (number), user (string), userOverrides (other), userOverridesAsString (other), usesTraditionalReflectiveProxies (boolean), vetoableChangeListeners (other)
- object name: com.xxx.p2j:name=OrmDynParseQuery
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDataSetParam
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_SchemaDict
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=NetworkWrites
attributes: Annotation (string), Count (number), Enabled (boolean), Total (number)
- object name: com.xxx.p2j:name=TMValidate
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmBufferDefinePerm
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=ApperverGetJavaParameter
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=All
attributes: Annotation (other)
- object name: java.lang:type=GarbageCollector,name=PS MarkSweep
attributes: CollectionCount (number), CollectionTime (number), LastGcInfo.duration (number), LastGcInfo.endTime (number), LastGcInfo.id (number), LastGcInfo.memoryUsageAfterGc (other), LastGcInfo.memoryUsageBeforeGc (other), LastGcInfo.startTime (number), MemoryPoolNames (other), Name (string), ObjectName (other), Valid (boolean)
- object name: com.xxx.p2j:name=OrmBufferDelete
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=sslWrap
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=AppserverAddTableMetaData
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Parse
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynParseFind
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=ContextLocalGet
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OutputTableCopier
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynamicTableParam
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=TMCommit
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmFqlParse
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Setup
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.sun.management:type=DiagnosticCommand
attributes: (no attributes found)
- object name: com.xxx.p2j:name=OrmTableMapperMap
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmCreateDynamicTable
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.sun.management:type=HotSpotDiagnostic
attributes: DiagnosticOptions (other), ObjectName (other)
- object name: jdk.management.jfr:type=FlightRecorder
attributes: Configurations (other), EventTypes (other), ObjectName (other), Recordings (other)
- object name: com.xxx.p2j:name=OrmTempTableQuery
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=SpreadsheetCmdNanos
attributes: Annotation (string), Count (number), Enabled (boolean), MapCounts (other), MapValues (other), Total (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Post
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmBufferDefineTemp
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=MemoryManager,name=Metaspace Manager
attributes: MemoryPoolNames (other), Name (string), ObjectName (other), Valid (boolean)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Intern
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=OperatingSystem
attributes: Arch (string), AvailableProcessors (number), CommittedVirtualMemorySize (number), FreePhysicalMemorySize (number), FreeSwapSpaceSize (number), MaxFileDescriptorCount (number), Name (string), ObjectName (other), OpenFileDescriptorCount (number), ProcessCpuLoad (number), ProcessCpuTime (number), SystemCpuLoad (number), SystemLoadAverage (number), TotalPhysicalMemorySize (number), TotalSwapSpaceSize (number), Version (string)
- object name: java.lang:type=Compilation
attributes: CompilationTimeMonitoringSupported (boolean), Name (string), ObjectName (other), TotalCompilationTime (number)
- object name: java.nio:type=BufferPool,name=direct
attributes: Count (number), MemoryUsed (number), Name (string), ObjectName (other), TotalCapacity (number)
- object name: java.lang:type=GarbageCollector,name=PS Scavenge
attributes: CollectionCount (number), CollectionTime (number), LastGcInfo.duration (number), LastGcInfo.endTime (number), LastGcInfo.id (number), LastGcInfo.memoryUsageAfterGc (other), LastGcInfo.memoryUsageBeforeGc (other), LastGcInfo.startTime (number), MemoryPoolNames (other), Name (string), ObjectName (other), Valid (boolean)
- object name: java.lang:type=MemoryPool,name=PS Old Gen
attributes: CollectionUsage.committed (number), CollectionUsage.init (number), CollectionUsage.max (number), CollectionUsage.used (number), CollectionUsageThreshold (number), CollectionUsageThresholdCount (number), CollectionUsageThresholdExceeded (boolean), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (number), UsageThresholdCount (number), UsageThresholdExceeded (boolean), UsageThresholdSupported (boolean), Valid (boolean)
- object name: java.util.logging:type=Logging
attributes: LoggerNames (other), ObjectName (other)
- object name: com.xxx.p2j:name=MessagePayloadS11n
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=MemoryPool,name=Code Cache
attributes: CollectionUsage.committed (unexpected: null), CollectionUsage.init (unexpected: null), CollectionUsage.max (unexpected: null), CollectionUsage.used (unexpected: null), CollectionUsageThreshold (exception), CollectionUsageThresholdCount (exception), CollectionUsageThresholdExceeded (exception), CollectionUsageThresholdSupported (boolean), MemoryManagerNames (other), Name (string), ObjectName (other), PeakUsage.committed (number), PeakUsage.init (number), PeakUsage.max (number), PeakUsage.used (number), Type (string), Usage.committed (number), Usage.init (number), Usage.max (number), Usage.used (number), UsageThreshold (number), UsageThresholdCount (number), UsageThresholdExceeded (boolean), UsageThresholdSupported (boolean), Valid (boolean)
- object name: com.xxx.p2j:name=ServerStateS11n
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Parse2
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Core
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=LegacyServiceWorkerTaskCounter
attributes: Annotation (string), Count (number), Enabled (boolean), MapCounts (other), MapValues (other), Total (number)
- object name: com.xxx.p2j:name=AppserverGetOutputParameter
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmHydrateRecord
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.nio:type=BufferPool,name=mapped
attributes: Count (number), MemoryUsed (number), Name (string), ObjectName (other), TotalCapacity (number)
- object name: com.xxx.p2j:name=sslUnwrap
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=QueryProfiler
attributes: Annotation (string), Enabled (boolean), QueryCount (number), Values (other)
- object name: com.xxx.p2j:name=OrmDynQueryInterpret
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_Annotation
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmPreselectQueryAssemble
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OutputDataSetHandleCopier
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmHqlHelperParse
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=WidgetAttrEnqueues
attributes: Annotation (string), Count (number), Enabled (boolean), MapCounts (other), MapValues (other), Total (number)
- object name: com.xxx.p2j:name=OrmTempTableParam
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: java.lang:type=Memory
attributes: HeapMemoryUsage.committed (number), HeapMemoryUsage.init (number), HeapMemoryUsage.max (number), HeapMemoryUsage.used (number), NonHeapMemoryUsage.committed (number), NonHeapMemoryUsage.init (number), NonHeapMemoryUsage.max (number), NonHeapMemoryUsage.used (number), ObjectName (other), ObjectPendingFinalizationCount (number), Verbose (boolean)
- object name: com.xxx.p2j:name=OutputDataSetCopier
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
- object name: com.xxx.p2j:name=OrmDynQueryProcess_SymRes
attributes: Annotation (string), Count (number), Enabled (boolean), TotalTimeMs (number), TotalTimeNs (number)
The log shows this is available:
- object name: com.xxx.p2j:name=menu.locks
attributes: ActiveLocks (number), DeletesFromVST (number), LockEvents (number), PersistCalls (number), PersistedLocks (number)
do any JMX metrics work for you? we will need your help to troubleshoot and narrow the issue down so that we can help