Brandon Burton created STORM-517:
------------------------------------
Summary: Support for "-Dservice=" in bin/storm, via
JAVA_SERVICE_NAME environment variable
Key: STORM-517
URL: https://issues.apache.org/jira/browse/STORM-517
Project: Apache Storm
Issue Type: Bug
Affects Versions: 0.9.2-incubating
Reporter: Brandon Burton
*Reasoning:*
Currently the way that _bin/storm_ starts the various storm processes (nimbus,
ui, supervisor) results in a process list entry like the following, for each
process:
{code}
ubuntu 21940 0.4 3.9 2294904 151384 ? Ssl Oct03 2:47 java -server
-Dstorm.options= -Dstorm.home=/home/ubuntu/apache-storm-0.9.2-incubating
-Djava.library.path=/usr/local/lib -Dstorm.conf.file= -cp
/home/ubuntu/apache-storm-0.9.2-incubating/lib/asm-4.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-logging-1.1.3.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/ring-devel-0.3.11.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/storm-core-0.9.2-incubating.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/log4j-over-slf4j-1.6.6.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/tools.cli-0.2.4.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/ring-servlet-0.3.11.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-codec-1.6.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/logback-classic-1.0.6.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/clj-time-0.4.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/httpclient-4.3.3.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/slf4j-api-1.6.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/httpcore-4.3.2.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/carbonite-1.4.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/clout-1.0.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/jetty-6.1.26.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/clojure-1.5.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-io-2.4.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-exec-1.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/jgrapht-core-0.9.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/curator-client-2.4.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/tools.macro-0.1.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/zookeeper-3.4.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/jline-2.11.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/minlog-1.2.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/tools.logging-0.2.3.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/reflectasm-1.07-shaded.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/guava-13.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/ring-core-1.1.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/logback-core-1.0.6.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/netty-3.6.3.Final.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/ring-jetty-adapter-0.3.11.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/core.incubator-0.1.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-lang-2.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/netty-3.2.2.Final.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/curator-framework-2.4.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/disruptor-2.10.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/servlet-api-2.5-20081211.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/clj-stacktrace-0.2.4.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/chill-java-0.3.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/compojure-1.1.3.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/kryo-2.21.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/jetty-util-6.1.26.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/servlet-api-2.5.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/json-simple-1.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/commons-fileupload-1.2.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/snakeyaml-1.11.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/math.numeric-tower-0.0.1.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/joda-time-2.0.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/hiccup-0.3.6.jar:/home/ubuntu/apache-storm-0.9.2-incubating/lib/objenesis-1.2.jar:/home/ubuntu/apache-storm-0.9.2-incubating/conf
-Xmx1024m -Dlogfile.name=nimbus.log
-Dlogback.configurationFile=/home/ubuntu/apache-storm-0.9.2-incubating/logback/cluster.xml
backtype.storm.daemon.nimbus
{code}
This means that it can be difficult to differentiate between the processes in
the process list and monitoring tools that use SNMP to get the process list
(such as Zenoss) can't differentiate because the process list arguments gets
truncated way before the list of .jars in the text stops being the same.
Ideally we'd be able to set *-Dservice=foo* in _bin/storm_ via an environment
variable, so it's easy to set with things like upstart, runit, etc
*Fix:*
I've added support for *-Dservice=* in bin/storm, via a JAVA_SERVICE_NAME
environment variable, in _bin/storm_
You can see the changes I made against _bin/storm_ from 0.9.2-incubating in
https://github.com/solarce/storm-cookbook/blob/master/templates/default/bin_storm.py.erb
and how I use it in an upstart template,
https://github.com/solarce/storm-cookbook/blob/master/templates/default/storm-upstart-conf.erb#L19
I'm going to submit the same changes against master on github
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)