Hi All -
I need to generate a thread dump for Camunda java process but it’s not working for some reason.
So, my set up is simple -
- Camunda standard docker image - Docker
- Go inside the container using -
docker exec -it 04b990452636 bash
- find camunda java process -
bash-5.1$ ps aux | grep java
7 camunda 1:43 /usr/bin/java --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED -Djava.util.logging.config.file=/camunda/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -javaagent:/camunda/javaagent/jmx_prometheus_javaagent.jar=9404:/camunda/javaagent/prometheus-jmx.yml -Dignore.endorsed.dirs= -classpath /camunda/bin/bootstrap.jar:/camunda/bin/tomcat-juli.jar -Dcatalina.base=/camunda -Dcatalina.home=/camunda -Djava.io.tmpdir=/camunda/temp org.apache.catalina.startup.Bootstrap start
- Try to use kill -3 on camunda pid (7) -
kill -3 7
It doesn’t say anything and doesn’t print to stdout, so, I was hoping it would be in Catalina out log file but nothing in there either …
I would rather use “jstack” instead of kill -3 but jstack in Camunda docker container is not available, there is a stripped out version of OpenJDK that contains just most essential bits and there is a symbolic link to jstack in /usr/bin but it’s broken as it references to OpenJDK and it’s not there simply …
Thanks!