cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

JMX Enhanced Monitor Plugin Returning Null Values for Custom JMX Service URL

krystal_peterso
Inactive

For background, I currently have the JMX Enhanced Monitor Plugin (found here: Plugin) in the 6.5 AppMon client. The task is set to use a custom JMX service URL (JMX RMI end point url). This task completes with the correct number of metrics and creates the jar file. I am able to import this jar file as a plugin and build a monitor of the plugin instance id and custom JMX service URL as stated in the instructions for the said plugin. The monitor reports back the correct names of the measure, but all of the values are null.

I am able to use jconsole to access the custom JMX service URL that I am using for this plugin and see that the measures actually have a value to them.

My question is how do I find out what is causing the measures to come back as null or what can I do to fix this?

Any help is appreciated. Thank you

7 REPLIES 7

Kodai_Ishikawa
Dynatrace Helper
Dynatrace Helper

Hi Krystal,

I recommend taking a look at the plugin log that is located on the Dynatrace Collector to find additional information on what may be causing the null values. I've attached a screenshot of how you can view the log file through the Dynatrace Client.

Navigate to the System Information dashlet, expand the DT Server > expand Connected Systems > expand the Collector (Group) that the plugin is running on > expand Support Information > expand Log Files. You should be able to select the appropriate plugin log in the drop down and download the log through the client by selecting the Download button below.

The log file should point you in the right direction on what may be causing the issue.

Regards,

Kodai

Hi Kodai,

I checked the log file and there is nothing listed.

To check the performance of the monitor, I "broke" the monitor on purpose by removing the authentication to see if it would generate a message, and it generated an "Authentication failed here! Credentials required". From that, I know the monitor is running. I place the credentials back into the monitor, ran it again, and there are no messages in the log file and I still get null values for the attributes I defined.

Thoughts?

Thank you,

Krystal

Hi Krystal,

Try navigating to the Dynatrace Server Settings > Plugins and find the JVM Enhanced Monitor Plugin. Navigate to the Properties of the plugin and set the Log Level to FINER. After making this change, try running the monitor again and check to see if there are any additional details in the logs. It may also be worth posting the question as a comment on the plugin page to see if you get any responses there as well.

Regards,

Kodai

Hi Kodai,

I changed the log level to FINER and was able to see the values appearing in the log file. We believe there is a separate problem involving the performance warehouse and the custom rmi path, and we will be looking into that further. At least I know that the values are being brought in.

Thank you for your help.

Take care,

Krystal

Hi,

I am running into same issue where I see the values coming in logs but do not see the values in monitoring details. Is there something else I need to do to get it working?

stefano_ghelfi
Newcomer

Hi all,

it seems like I'm experiencing the same problem, I'm trying to monitor an HiveMQ application server via JMX, I was able to run the task and import the measures but the task is returning null values. I set the log to finer and seems that the metric are correctly collected, but in the task details I only see "null" in the retrieved measurement.

Could you please help?

Regards

2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering setup method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering setConfiguration method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_IS_TASK parameter is 'false'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_IS_CUSTOM_JMX_URL parameter is 'false'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: JMX Host is '10.45.148.46'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_JMX_PORT parameter is '9010'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_PLUGIN_ID parameter is 'TestHiveMQCLass'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: BUNDLE_SYMBOLIC_NAME parameter is 'com.dynatrace.diagnostics.plugin.jmx.metricgroup.testhivemqclass'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_IS_AUTHENTICATION_ON parameter is 'false'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_JMX_SERVER_TYPE parameter is 'JVM'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: jmxST name is 'JVM', ordinal is 1, jmxST is 'JVM'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_INCLUDE_MBEAN_PATTERN parameter is 'metrics:name=com.hivemq.messages.incoming.publish.count'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: IncludeMBeansPatterns parameter is '[metrics:name=com.hivemq.messages.incoming.publish.count]'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: CONFIG_EXCLUDE_MBEAN_PATTERN parameter is ''
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: ExcludeMBeansPatterns parameter is '[]'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setConfiguration method: jmxServiceUrlString is 'service:jmx:rmi://10.45.148.46:9010/jndi/rmi://10.45.148.46:9010/jmxrmi'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] setup method: the configuration property file is JMXMonitorProperties [isTask=false, pluginId=TestHiveMQCLass, bundleSymbolicName=com.dynatrace.diagnostics.plugin.jmx.metricgroup.testhivemqclass, maxNumberOfMetrics=1000, customJmxUrlInd=false, jmxHost=10.45.148.46, jmxPort=9010, isAuthenticationOn=false, user=-, password=-, urlPath=-, customJmxUrl=-, jmxServerType=JVM, includeMBeansPatterns=[metrics:name=com.hivemq.messages.incoming.publish.count], excludeMBeansPatterns=[], workDir=null, dirJar=null, archiveDir=null, jarFileName=null, jarAbsFileName=null, jarVersion=null, jarCommand=null, shellScriptContent=null, manifestAbsFileName=null, manifest=null, manifest=null, pluginXml=null, jmxServiceUrlString=service:jmx:rmi://10.45.148.46:9010/jndi/rmi://10.45.148.46:9010/jmxrmi, jmxServiceUrl=service:jmx:rmi://10.45.148.46:9010/jndi/rmi://10.45.148.46:9010/jmxrmi, credentialsMap={}, jmxConnector=javax.management.remote.rmi.RMIConnector: jmxServiceURL=service:jmx:rmi://10.45.148.46:9010/jndi/rmi://10.45.148.46:9010/jmxrmi, jmxConnection=javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection@5dcc730f, dtRestUrl=-]
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering execute method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering processMBeans method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] processMBeans: IncludeMBeansPatterns: line is 'metrics:name=com.hivemq.messages.incoming.publish.count'
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering buildMeasure method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering getMGName method
2017-10-16 18:08:52 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering populateMeasure method: metric group name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count', metric name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count.Count', value = 171008.0
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering execute method
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering processMBeans method
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] processMBeans: IncludeMBeansPatterns: line is 'metrics:name=com.hivemq.messages.incoming.publish.count'
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering buildMeasure method
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering getMGName method
2017-10-16 18:13:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering populateMeasure method: metric group name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count', metric name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count.Count', value = 171192.0
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering execute method
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering processMBeans method
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] processMBeans: IncludeMBeansPatterns: line is 'metrics:name=com.hivemq.messages.incoming.publish.count'
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering buildMeasure method
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering getMGName method
2017-10-16 18:23:19 FINER [JMXMonitor@TestMonitorHiveMQ_0] Entering populateMeasure method: metric group name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count', metric name is 'TestHiveMQCLass.metrics.name.com.hivemq.messages.incoming.publish.count.Count', value = 171414.0

cleyton
Newcomer

IMO... the names are not maching... check measure name in a JMX console, log and generated plugin.xml