palantir / go-java-launcher

A simple Go program for launching Java programs from a fixed configuration. This program replaces Gradle-generated Bash launch scripts which are susceptible to attacks via injection of environment variables of the form JAVA_OPTS='$(rm -rf /)'.
Apache License 2.0
67 stars 27 forks source link

Excessive logging on startup #7

Open iamdanfox opened 8 years ago

iamdanfox commented 8 years ago

go-java-launcher spams out a wall of text every time I run my app, sample included below.

Could we disable this logging by default? This would improve the signal-to-noise ratio of log files, especially because these lines seem to be most useful to devs of go-java-launcher and aren't really useful to an app developer.

One option would be to follow rust's lead and only output logs if an environment variable is set, such as DEBUG_LOG.

The worst offenders seem to be in launcher.go: https://github.com/palantir/go-java-launcher/blob/405cb8ec1524a5c9daaa2a92d85311525ef29e8d/launchlib/launcher.go#L72. It's also unfortunate that the first line printed begins with the word "Failed", despite the app functioning exactly how I intended.

sample logs:

Failed to read custom config file, assuming no custom config: var/conf/launcher-custom.yml Launching with static configuration {java 1 com.palantir.xxxxxxxx.xxxxxxxxxxxx.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX [service/lib/xxxxxxxx-xxxxxxxxxxxx-4.6.2-5-g53e4945.jar service/lib/xxxxxxxx-xxx-4.6.2-5-g53e4945.jar service/lib/xxxxxxxx-dropwizard-unix-socket-4.6.2-5-g53e4945.jar service/lib/xxxxxxxx-xxxxxxxxxx-api-4.6.2-5-g53e4945.jar service/lib/dropwizard-core-0.9.2.jar service/lib/dropwizard-java8-0.9.0-1.jar service/lib/commons-io-2.4.jar service/lib/encrypted-config-value-bundle-0.1.8.jar service/lib/http-clients-0.13.1.jar service/lib/ssl-config-0.13.1.jar service/lib/awaitility-1.6.5.jar service/lib/feign-httpclient-8.17.0.jar service/lib/annotations-3.0.0.jar service/lib/xxxxxxxx-api-4.6.2-5-g53e4945.jar service/lib/logback-classic-1.1.4.jar service/lib/metrics-core-3.1.2.jar service/lib/jackson-annotations-2.7.4.jar service/lib/jackson-databind-2.7.4.jar service/lib/jackson-dataformat-yaml-2.7.4.jar service/lib/jackson-datatype-jsr310-2.7.4.jar service/lib/jackson-datatype-guava-2.7.4.jar service/lib/jackson-datatype-jdk8-2.7.4.jar service/lib/guava-18.0.jar service/lib/reflections-0.9.10.jar service/lib/commons-lang3-3.4.jar service/lib/commons-httpclient-3.1.jar service/lib/junixsocket-native-2.0.4.nar service/lib/junixsocket-native-common-2.0.4.jar service/lib/junixsocket-common-2.0.4.jar service/lib/junixsocket-rmi-2.0.4.jar service/lib/httpclient-4.5.2.jar service/lib/javax.ws.rs-api-2.0.1.jar service/lib/metrics-annotation-3.1.2.jar service/lib/dropwizard-util-0.9.2.jar service/lib/dropwizard-jackson-0.9.2.jar service/lib/dropwizard-validation-0.9.2.jar service/lib/dropwizard-configuration-0.9.2.jar service/lib/dropwizard-logging-0.9.2.jar service/lib/dropwizard-metrics-0.9.2.jar service/lib/dropwizard-jersey-0.9.2.jar service/lib/dropwizard-servlets-0.9.2.jar service/lib/dropwizard-jetty-0.9.2.jar service/lib/dropwizard-lifecycle-0.9.2.jar service/lib/metrics-jvm-3.1.2.jar service/lib/metrics-servlets-3.1.2.jar service/lib/metrics-healthchecks-3.1.2.jar service/lib/argparse4j-0.6.0.jar service/lib/jetty-setuid-java-1.0.3.jar service/lib/encrypted-config-value-0.1.8.jar service/lib/error-handling-0.13.1.jar service/lib/brave-extensions-0.13.1.jar service/lib/service-config-0.13.1.jar service/lib/brave-okhttp-3.9.0.jar service/lib/feign-jackson-8.17.0.jar service/lib/feign-jaxrs-8.17.0.jar service/lib/feign-okhttp-8.17.0.jar service/lib/feign-slf4j-8.17.0.jar service/lib/jsr305-3.0.0.jar service/lib/slf4j-api-1.7.21.jar service/lib/hamcrest-library-1.3.jar service/lib/hamcrest-core-1.3.jar service/lib/cglib-nodep-3.1.jar service/lib/objenesis-2.1.jar service/lib/feign-core-8.17.0.jar service/lib/logback-core-1.1.4.jar service/lib/jackson-core-2.7.4.jar service/lib/snakeyaml-1.15.jar service/lib/javassist-3.18.2-GA.jar service/lib/commons-codec-1.10.jar service/lib/native-lib-loader-2.0.2.jar service/lib/log4j-1.2.17.jar service/lib/httpcore-4.4.4.jar service/lib/jcl-over-slf4j-1.7.12.jar service/lib/joda-time-2.9.3.jar service/lib/jackson-module-afterburner-2.6.3.jar service/lib/jackson-datatype-joda-2.7.4.jar service/lib/hibernate-validator-5.2.2.Final.jar service/lib/javax.el-3.0.0.jar service/lib/metrics-logback-3.1.2.jar service/lib/jul-to-slf4j-1.7.12.jar service/lib/log4j-over-slf4j-1.7.12.jar service/lib/jetty-util-9.2.13.v20150730.jar service/lib/jersey-server-2.22.1.jar service/lib/jersey-metainf-services-2.22.1.jar service/lib/jersey-bean-validation-2.22.1.jar service/lib/metrics-jersey2-3.1.2.jar service/lib/jackson-jaxrs-json-provider-2.6.3.jar service/lib/jersey-container-servlet-2.22.1.jar service/lib/jetty-server-9.2.13.v20150730.jar service/lib/jetty-webapp-9.2.13.v20150730.jar service/lib/jetty-continuation-9.2.13.v20150730.jar service/lib/metrics-jetty9-3.1.2.jar service/lib/jetty-servlet-9.2.13.v20150730.jar service/lib/jetty-servlets-9.2.13.v20150730.jar service/lib/jetty-http-9.2.13.v20150730.jar service/lib/metrics-json-3.1.2.jar service/lib/brave-core-3.9.0.jar service/lib/okhttp-3.4.1.jar service/lib/brave-http-3.9.0.jar service/lib/animal-sniffer-annotation-1.0.jar service/lib/validation-api-1.1.0.Final.jar service/lib/jboss-logging-3.2.1.Final.jar service/lib/classmate-1.1.0.jar service/lib/jersey-common-2.22.1.jar service/lib/jersey-client-2.22.1.jar service/lib/jersey-media-jaxb-2.22.1.jar service/lib/javax.annotation-api-1.2.jar service/lib/hk2-api-2.4.0-b31.jar service/lib/javax.inject-2.4.0-b31.jar service/lib/hk2-locator-2.4.0-b31.jar service/lib/jackson-jaxrs-base-2.6.3.jar service/lib/jackson-module-jaxb-annotations-2.6.3.jar service/lib/jersey-container-servlet-core-2.22.1.jar service/lib/javax.servlet-api-3.1.0.jar service/lib/jetty-io-9.2.13.v20150730.jar service/lib/jetty-xml-9.2.13.v20150730.jar service/lib/jetty-security-9.2.13.v20150730.jar service/lib/zipkin-1.0.0.jar service/lib/okio-1.9.0.jar service/lib/jersey-guava-2.22.1.jar service/lib/osgi-resource-locator-1.0.1.jar service/lib/hk2-utils-2.4.0-b31.jar service/lib/aopalliance-repackaged-2.4.0-b31.jar service/lib/javax.inject-1.jar service/lib/commons-logging-1.2.jar service/lib/jackson-datatype-jdk7-2.6.3.jar service/lib/auth-tokens-0.2.3.jar] [-Djava.security.egd=file:/dev/./urandom -Djava.io.tmpdir=var/data/tmp] [server var/conf/xxxxxxxxxxxx.yml]} and custom configuration { 0 []} Working directory: /opt/palantir/services/xxxxxxxx Using JAVA_HOME: /opt/jdk/jre Classpath: /opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-xxxxxxxxxxxx-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-sdk-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-dropwizard-unix-socket-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-xxxxxxxxxx-api-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-core-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-java8-0.9.0-1.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-io-2.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/encrypted-config-value-bundle-0.1.8.jar:/opt/palantir/services/xxxxxxxx/service/lib/http-clients-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/ssl-config-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/awaitility-1.6.5.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-httpclient-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/annotations-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-api-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/logback-classic-1.1.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-core-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-annotations-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-databind-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-dataformat-yaml-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jsr310-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-guava-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jdk8-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/guava-18.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/reflections-0.9.10.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-lang3-3.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-httpclient-3.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-native-2.0.4.nar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-native-common-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-common-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-rmi-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/httpclient-4.5.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.ws.rs-api-2.0.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-annotation-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-util-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jackson-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-validation-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-configuration-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-logging-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-metrics-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jersey-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-servlets-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jetty-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-lifecycle-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jvm-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-servlets-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-healthchecks-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/argparse4j-0.6.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-setuid-java-1.0.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/encrypted-config-value-0.1.8.jar:/opt/palantir/services/xxxxxxxx/service/lib/error-handling-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-extensions-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/service-config-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-okhttp-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-jackson-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-jaxrs-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-okhttp-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-slf4j-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jsr305-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/slf4j-api-1.7.21.jar:/opt/palantir/services/xxxxxxxx/service/lib/hamcrest-library-1.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/hamcrest-core-1.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/cglib-nodep-3.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/objenesis-2.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-core-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/logback-core-1.1.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-core-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/snakeyaml-1.15.jar:/opt/palantir/services/xxxxxxxx/service/lib/javassist-3.18.2-GA.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-codec-1.10.jar:/opt/palantir/services/xxxxxxxx/service/lib/native-lib-loader-2.0.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/log4j-1.2.17.jar:/opt/palantir/services/xxxxxxxx/service/lib/httpcore-4.4.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jcl-over-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/joda-time-2.9.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-module-afterburner-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-joda-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/hibernate-validator-5.2.2.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.el-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-logback-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jul-to-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/log4j-over-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-util-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-server-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-metainf-services-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-bean-validation-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jersey2-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-jaxrs-json-provider-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-container-servlet-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-server-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-webapp-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-continuation-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jetty9-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-servlet-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-servlets-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-http-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-json-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-core-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/okhttp-3.4.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-http-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/animal-sniffer-annotation-1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/validation-api-1.1.0.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/jboss-logging-3.2.1.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/classmate-1.1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-common-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-client-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-media-jaxb-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.annotation-api-1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-api-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.inject-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-locator-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-jaxrs-base-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-module-jaxb-annotations-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-container-servlet-core-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.servlet-api-3.1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-io-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-xml-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-security-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/zipkin-1.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/okio-1.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-guava-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/osgi-resource-locator-1.0.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-utils-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/aopalliance-repackaged-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.inject-1.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-logging-1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jdk7-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/auth-tokens-0.2.3.jar Argument list to Java binary: [/opt/jdk/jre/bin/java -Djava.security.egd=file:/dev/./urandom -Djava.io.tmpdir=var/data/tmp -classpath /opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-xxxxxxxxxxxx-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-sdk-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-dropwizard-unix-socket-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-xxxxxxxxxx-api-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-core-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-java8-0.9.0-1.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-io-2.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/encrypted-config-value-bundle-0.1.8.jar:/opt/palantir/services/xxxxxxxx/service/lib/http-clients-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/ssl-config-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/awaitility-1.6.5.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-httpclient-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/annotations-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/xxxxxxxx-api-4.6.2-5-g53e4945.jar:/opt/palantir/services/xxxxxxxx/service/lib/logback-classic-1.1.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-core-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-annotations-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-databind-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-dataformat-yaml-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jsr310-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-guava-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jdk8-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/guava-18.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/reflections-0.9.10.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-lang3-3.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-httpclient-3.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-native-2.0.4.nar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-native-common-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-common-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/junixsocket-rmi-2.0.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/httpclient-4.5.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.ws.rs-api-2.0.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-annotation-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-util-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jackson-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-validation-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-configuration-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-logging-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-metrics-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jersey-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-servlets-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-jetty-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/dropwizard-lifecycle-0.9.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jvm-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-servlets-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-healthchecks-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/argparse4j-0.6.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-setuid-java-1.0.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/encrypted-config-value-0.1.8.jar:/opt/palantir/services/xxxxxxxx/service/lib/error-handling-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-extensions-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/service-config-0.13.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-okhttp-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-jackson-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-jaxrs-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-okhttp-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-slf4j-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jsr305-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/slf4j-api-1.7.21.jar:/opt/palantir/services/xxxxxxxx/service/lib/hamcrest-library-1.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/hamcrest-core-1.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/cglib-nodep-3.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/objenesis-2.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/feign-core-8.17.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/logback-core-1.1.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-core-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/snakeyaml-1.15.jar:/opt/palantir/services/xxxxxxxx/service/lib/javassist-3.18.2-GA.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-codec-1.10.jar:/opt/palantir/services/xxxxxxxx/service/lib/native-lib-loader-2.0.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/log4j-1.2.17.jar:/opt/palantir/services/xxxxxxxx/service/lib/httpcore-4.4.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/jcl-over-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/joda-time-2.9.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-module-afterburner-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-joda-2.7.4.jar:/opt/palantir/services/xxxxxxxx/service/lib/hibernate-validator-5.2.2.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.el-3.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-logback-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jul-to-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/log4j-over-slf4j-1.7.12.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-util-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-server-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-metainf-services-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-bean-validation-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jersey2-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-jaxrs-json-provider-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-container-servlet-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-server-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-webapp-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-continuation-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-jetty9-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-servlet-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-servlets-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-http-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/metrics-json-3.1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-core-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/okhttp-3.4.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/brave-http-3.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/animal-sniffer-annotation-1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/validation-api-1.1.0.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/jboss-logging-3.2.1.Final.jar:/opt/palantir/services/xxxxxxxx/service/lib/classmate-1.1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-common-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-client-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-media-jaxb-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.annotation-api-1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-api-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.inject-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-locator-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-jaxrs-base-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-module-jaxb-annotations-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-container-servlet-core-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.servlet-api-3.1.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-io-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-xml-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/jetty-security-9.2.13.v20150730.jar:/opt/palantir/services/xxxxxxxx/service/lib/zipkin-1.0.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/okio-1.9.0.jar:/opt/palantir/services/xxxxxxxx/service/lib/jersey-guava-2.22.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/osgi-resource-locator-1.0.1.jar:/opt/palantir/services/xxxxxxxx/service/lib/hk2-utils-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/aopalliance-repackaged-2.4.0-b31.jar:/opt/palantir/services/xxxxxxxx/service/lib/javax.inject-1.jar:/opt/palantir/services/xxxxxxxx/service/lib/commons-logging-1.2.jar:/opt/palantir/services/xxxxxxxx/service/lib/jackson-datatype-jdk7-2.6.3.jar:/opt/palantir/services/xxxxxxxx/service/lib/auth-tokens-0.2.3.jar com.palantir.xxxxxxxx.xxxxxxxxxxxx.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX server var/conf/xxxxxxxxxxxx.yml]

uschi2000 commented 8 years ago

ok if we write to stderr instead of stdout?

iamdanfox commented 8 years ago

My main aim is to not have these lines appear at the top of myservice-startup.log when using the gradle-java-distribution plugin. If that init.sh script ignores stderr, then that would be perfect, but unfortunately I think it captures both.

uschi2000 commented 8 years ago

hmm, interestingly other folks may exactly want to have that information in the startup log. Not really sure what to do, exactly

iamdanfox commented 8 years ago

There are a bunch of other ways to print out a product's classpath if people really want this, but forcing these lines on everyone feels a bit heavy handed. Everyone gets a few kilobytes of noise before anything interesting happens.

Also these lines were not present before gradle-java-distribution used go-java-launcher... do you know if they were explicitly requested or just put in for dev purposes?

bobmshannon commented 7 years ago

@iamdanfox have you found a workaround for disabling this logging since reporting?

iamdanfox commented 7 years ago

@bobmshannon no workaround, but I know that you can get this classpath information by just running ps aux, so I'm more convinced we should just put in a PR to get rid of this logging.

clormor commented 7 years ago

+1, this amount of logging by default makes it very hard to parse the startup logs. I have to pretty much maximise my PuTTY session in order to see multiple lines.

There are occasions when having this logging would be nice. The occasions I've come across this are when you're trying to see if your custom JVM options are being picked up. But they are in the minority and I'd suggest you want to put this level of logging behind some kind of flag (e.g. debug logging, by default debug logging is off).

Reminds me of when we first introduced patches in Gotham - massive splurge of patch hashes in dispatch startup logs 😢

clormor commented 7 years ago

While we're at it... it would be great if you could use a logging library, or basically do things that logging libraries do like;

  1. print the time
  2. print the log level (e.g. @iamdanfox would probably not mind the "Failed..." line so much if it was prepended with "[INFO] ...")
  3. have some way of configuring the log level (which would potentially solve the crux of the problem).