apmccctrl started with specific instance dies when agents stops
search cancel

apmccctrl started with specific instance dies when agents stops

book

Article ID: 217619

calendar_today

Updated On:

Products

CA Application Performance Management (APM / Wily / Introscope)

Issue/Introduction

We are facing this issue when using java agent :

The 1st java instance launched starts the Command Center Controller (apmccctrl) on 5194. If user starts other java instances, they will connect on this controller. But if user stops his 1st instance, every body is cut from acc.

Example : I start a tomcat instance, acc controller is linked :

16615     1 33 14:37 pts/0    00:00:22 /openjdk_11.0.3/bin/java -Djava.util.logging.config.file=/tom90/instances/Hello_as/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:/apm_agent_for_tomcat/wily/Agent.jar -Dinstance=Hello_as -Xms256M -Xmx256M -Dcom.wily.introscope.agent.agentName=Hello_as -Dfile.encoding=UTF-8 -Dintroscope.agent.acc.controller.configurationServer.url=http://cloudproxy-pp.mydomain.com:8081 -DagentManager.url.1=ws://cloudproxy-pp.mydomain.com:8081 -Dcom.wily.introscope.agentProfile=/apm_agent_for_tomcat/wily/releases/21.4/core/config/IntroscopeAgent.profile -Dignore.endorsed.dirs= -classpath /tom90/apache-tomcat-9.0.43/bin/bootstrap.jar:/tom90/apache-tomcat-9.0.43/bin/tomcat-juli.jar -Dcatalina.base=/tom90/instances/Hello_as -Dcatalina.home=/tom90/apache-tomcat-9.0.43 -Djava.io.tmpdir=/tom90/instances/Hello_as/temp org.apache.catalina.startup.Bootstrap start

16707 16615 22 14:37 pts/0    00:00:12 /opt/openjdk_11.0.3/bin/java -Xmx64m -Djdk.http.auth.tunneling.disabledSchemes= -Dlogging.config=classpath:config/logback-console-less.xml -classpath lib/acc-controller.jar:/apm_agent_for_tomcat/wily/releases/21.4/Agent.jar org.springframework.boot.loader.JarLauncher --spring.config.location=file:config/apmccctrl.properties

On this controller I have a Websphere instance connected :

32333  3587  7 Jun03 ?        22:38:20 /was80/AppServer/java/bin/java -Dwas.launcher.server=cell1:node01:server1 -Dwas.status.socket=33589 -Dosgi.install.area=/was80/AppServer -Dosgi.configuration.area=/was80/profiles/node01/servers/server1/configuration -Djava.awt.headless=true -Dosgi.framework.extensions=com.ibm.cds,com.ibm.ws.eclipse.adaptors -Xshareclasses:name=webspherev85_1.8_64_bundled_%g,nonFatal -Dcom.ibm.xtq.processor.overrideSecureProcessing=true -Xcheck:dump -Djava.security.properties=/was80/AppServer/properties/java.security -Xbootclasspath/p:/was80/AppServer/java/jre/lib/ibmorb.jar -classpath /was80/profiles/node01/properties:/was80/AppServer/properties:/was80/AppServer/lib/startup.jar:/was80/AppServer/lib/bootstrap.jar:/was80/AppServer/lib/lmproxy.jar:/was80/AppServer/lib/urlprotocols.jar:/was80/AppServer/deploytool/itp/batchboot.jar:/was80/AppServer/deploytool/itp/batch2.jar:/was80/AppServer/java/lib/tools.jar -Dibm.websphere.internalClassAccessMode=allow -Xms2048m -Xmx4000m -Xcompressedrefs -Xscmaxaot16M -Xscmx120M -Dws.ext.dirs=/was80/AppServer/java/lib:/was80/profiles/node01/classes:/was80/AppServer/classes:/was80/AppServer/lib:/was80/AppServer/installedChannels:/was80/AppServer/lib/ext:/was80/AppServer/web/help:/was80/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime -Dderby.system.home=/was80/AppServer/derby -Dcom.ibm.itp.location=/was80/AppServer/bin -Djava.util.logging.configureByServer=true -Duser.install.root=/was80/profiles/node01 -Djava.ext.dirs=/was80/AppServer/tivoli/tam:/was80/AppServer/java/jre/lib/ext -Djavax.management.builder.initial=com.ibm.ws.management.PlatformMBeanServerBuilder -Dpython.cachedir=/was80/profiles/node01/temp/cachedir -Dwas.install.root=/was80/AppServer -Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager -Dserver.root=/was80/profiles/node01 -Dcom.wily.introscope.agentProfile=/users/user1/apm_agent_for_was/wily/releases/21.4/core/config/IntroscopeAgent.profile -javaagent:/users/user1/apm_agent_for_was/wily/Agent.jar -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -XX:HeapDumpPath=/users/user2/javadump -XX:+HeapDumpOnOutOfMemoryError -Dclient.encoding.override=UTF-8 -Duser.region=FR -Duser.language=fr -Dlog.level.appli=WARN -Dlog.path=/users/user2/log -verbose:gc -Djava.compiler=NONE -Xdebug -Xnoagent -Djava.library.path=/was80/AppServer/lib/native/linux/x86_64/:/was80/AppServer/java/jre/lib/amd64/compressedrefs:/was80/AppServer/java/jre/lib/amd64:/was80/AppServer/bin:/was80/AppServer/nulldllsdir:/usr/lib64:/usr/lib:library_path: -Djava.endorsed.dirs=/was80/AppServer/endorsed_apis:/was80/AppServer/java/jre/lib/endorsed -Djava.security.auth.login.config=/was80/profiles/node01/properties/wsjaas.conf -Djava.security.policy=/was80/profiles/node01/properties/server.policy com.ibm.wsspi.bootstrap.WSPreLauncher -nosplash -application com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.runtime.WsServer /was80/profiles/node01/config cell1 node01 server1

if i stop the tomcat instance, websphere will disconnect acc.

 

Environment

Release : 20.2

Component : Integration with APM

Cause

This is expected behaviour. 
 
The agent controller is started as a child process of the agent and so when the agents stops it's children will also stop. (see the pid and ppid 16615 in the above ps output)

Resolution


 
The Agent Controller extension when deployed with the java agent is really intended for situations where the agent is on the only one on a system and so no common ACC controller is available.
 
If you are running multiple java agents on the server a standalone acc controller would be the best approach to take this will then run independently of the agents.

The easiest option to run a standalone controller would be to download an Infrastructure agent form the agent downloads page on the DX APM SaaS portal as by default that is configured with just two components one of which is the agent controller 

Attachments