I installed the Dynatrace Application Performance Management app from Splunkbase and installed it on my Indexer (Linux Splunk server). I am getting an error that Flume server is not running. I tried manually, but no luck. I installed the same APM app in my Windows machine and it is running.
deleted PID also, but no luck.
Any ideas/suggestions experts?
Below is the error message (when I manually tried to run runFlume.py):
[splk@hostname bin]$ python runFlume.py java version "1.7.095" OpenJDK Runtime Environment (rhel-220.127.116.11.e**7-x8664 u-b) OpenJDK 64-Bit Server VM (build 24.-b, mixed mode) Child returned 0 Class path: /splunk/etc/apps/compuwareapm/bin/bin/apache-flume-1.3.1-bin/lib/:/data/splunkgrt/etc/apps/compuwareapm/bin/bin/apache-flume-1.3.1-bin/lib/flume-ng-node-1.3.1.jar:/splunk*/etc/apps/compuwareapm/bin/bin/dtFlume.jar PID file exists but process is no longer running. Removing pidfile Error: Could not find or load main class org.apache.flume.node.Application Child returned 1
It seems that about 1 in every 1000 installations of the app result in the classpath being improperly constructed by the Python script that starts Flume.
You can resolve this issue by editing the following lines in /%SPLUNK_HOME%/etc/apps/compuwareapm/bin/runFlume.py:
c1 = os.path.join(appdir, "bin", "apache-flume-1.3.1-bin", "lib", "*") c2 = os.path.join(appdir, "bin", "apache-flume-1.3.1-bin", "lib", "flume-ng-node-1.3.1.jar") c3 = os.path.join(appdir, "bin", "dtFlume.jar")
remove the leading "bin" so that the lines read:
c1 = os.path.join(appdir, "apache-flume-1.3.1-bin", "lib", "*") c2 = os.path.join(appdir, "apache-flume-1.3.1-bin", "lib", "flume-ng-node-1.3.1.jar") c3 = os.path.join(appdir, "dtFlume.jar")
I have been unsuccesfully trying to nail down the source of this issue for quite some time, It appears that on some Splunk environments
appdir = os.path.dirname(os.path.dirname(__file__)) will result in /%SPLUNKHOME%/etc/apps/compuwareapm and in other environments it will result in /%SPLUNKHOME%/etc/apps/compuwareapm/bin.
In case this comes up in the search results for other folks experiencing this issue a fix has been created and uploaded as part of the 2.3.0 release of this app.
The fix was to change the line defining appdir in the runFlume.py to the following:
appdir = os.path.abspath(os.path.join(os.path.dirname(__file__),".."))