I am trying to install Monitoring of Java Virtual Machines with JMX (SPLUNK4JMX or Splunk for JMX) on a non clustered, single Linux machine.
[jmx] config_file = config.xml polling_frequency = 60 sourcetype = jmx index = jmx disabled = 0
Line 63 changed to:
<jmxserver host="localhost" jvmDescription="cassandra" jmxport="12345">
Line 67 changed to:
<mbean domain="*" properties="*" dumpAllAttributes="true" />
The rest of the file config.xml remained the same at /opt/splunkforwarder/etc/apps/SPLUNK4JMX/bin/config/config.xml. No username, password was added.
Error I get in splunkd.log
ERROR ModularInputs - Unable to initialize modular input "jmx" defined inside the app "SPLUNK4JMX": Introspecting scheme=jmx: script running failed (exited with code 1)
No jmx.log file created under /opt/splunkforwarder/var/log/splunk/
Please help me resolve this issue.
Have you installed this on a Splunk UF? Based on the path you provided: "/opt/splunkforwarder/etc/apps/SPLUNK4JMX/bin/config/config.xml"
It looks like this is one some type of Splunk forwarder. The SPLUNK4JMX app requires python to run and I do not believe the forwarders come with python. You must use a heavy forwarder since that comes with Python.
Thankyou. It is installed on the universal forwarder, but I have installed python as well.
Is there any other constraint to install Splunk only on Heavy forwarders, or will SPLUNK4JMX work on Universal Forwarder + python?
Try setting the variables PYTHONPATH and PYTHONHOME. The UF by default will look for the Python install that generally comes bundled with splunk, but since that is not there it will fail. If you set these two variables then it should be able to invoke the script.