cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Exception in thread "main" JAVA Agent Spring Boot Application container

Hi! I am new on AppDynamics and I want to configure a Java Agent on a simple Spring Boot Application, for trial proposes. but when I put the line -javaagent an error is going on.

 

 

[root@ip-172-31-33-180 docker-apm]# docker logs docker
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:386)
        at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:401)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1967)
        at com.singularity.ee.agent.appagent.AgentEntryPoint.getAgentDirFromCommandLine(AgentEntryPoint.java:1976)
        at com.singularity.ee.agent.appagent.AgentEntryPoint.getAgentInstallDirectory(AgentEntryPoint.java:992)
        at com.singularity.ee.agent.appagent.AgentEntryPoint.premain(AgentEntryPoint.java:471)
        ... 6 more
FATAL ERROR in native method: processing of -javaagent failed
Aborted (core dumped)

 

this is my dockerfile

 

FROM openjdk:8
ADD docker-spring-boot.jar docker-spring-boot.jar
EXPOSE 8080
ADD AppServerAgent AppServerAgent
RUN apt-get update && apt-get install telnet
RUN chmod -R o+x /AppServerAgent
RUN chmod 777 /AppServerAgent
WORKDIR /AppServerAgent
ENV JAVA_OPTS=-javaagent:javaagent.jar
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /docker-spring-boot.jar" ]
#ENTRYPOINT [ "sh", "-c", "java -Djava.security.egd=file:/dev/./urandom -jar /docker-spring-boot.jar" ]

thanks

2 REPLIES 2

Peter.Holditch
Moderator
Moderator

Walter,

 

I suspect if you change

ENV JAVA_OPTS=-javaagent:javaagent.jar

to

ENV JAVA_OPTS=-javaagent:/AppServerAgent/javaagent.jar

 

The agent may load successfully.

 

Note, we have published some docker files illistrating how you can install the agent in a docker environment.  This one is pretty close to what you're trying to achieve.

 

Warm regards,

Peter

 



Found something helpful? Click the Accept as Solution button to help others find answers faster.
Liked something? Click the Thumbs Up button.

So Simple, thanks!