외부 Backend 서비스 trace data 추적하기
2024. 4. 9. 14:10ㆍIT
opentelemetry-javaagent.jar 설치하기
/usr/share 경로에서 signoz 디렉토리 만들기
- /usr/share/signoz
- chown tomcat:tomcat signoz
wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.32.0/opentelemetry-javaagent.jar
chown tomcat:tomcat opentelemetry-javaagent.jar

- /usr/libexec/tomcat server 파일
#!/bin/bash
if [ -f "/usr/libexec/tomcat9/preamble" ]
then
TOMCAT_VERSION="tomcat9"
elif [ -f "/usr/libexec/tomcat10/preamble" ]
then
TOMCAT_VERSION="tomcat10"
else
TOMCAT_VERSION="tomcat"
fi
. /usr/libexec/${TOMCAT_VERSION}/preamble
# This function is overwritten by Elastic Beanstalk
# Run application
run()
{
set_javacmd
if [ -n "${VERBOSE}" ]; then
echo "Java virtual machine used: ${JAVACMD}"
echo "classpath used: ${CLASSPATH}"
echo "main class used: ${MAIN_CLASS}"
echo "flags used: ${FLAGS}"
echo "options used: ${OPTIONS}"
echo "arguments used: ${@}"
fi
# let's start
eval "exec \"${JAVACMD}\" ${FLAGS} -classpath \"${CLASSPATH}\" \
${OPTIONS} \"${MAIN_CLASS}\" \"${@}\""
}
MAIN_CLASS=org.apache.catalina.startup.Bootstrap
FLAGS="$JAVA_OPTS"
FLAGS="${FLAGS} -javaagent:/usr/share/signoz/opentelemetry-javaagent.jar -Dotel.exporter.otlp.endpoint=http://3.38.252.232:32528 -Dotel.resource.attributes=service.name=mathcell-iscreams-api"
OPTIONS="-Dcatalina.base=$CATALINA_BASE \
-Dcatalina.home=$CATALINA_HOME \
-Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \
-Djava.io.tmpdir=$CATALINA_TMPDIR \
-Djava.util.logging.config.file=${LOGGING_PROPERTIES} \
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
if [ "$1" = "start" ] ; then
FLAGS="${FLAGS} $CATALINA_OPTS"
if [ "${SECURITY_MANAGER}" = "true" ] ; then
OPTIONS="${OPTIONS} \
-Djava.security.manager \
-Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy"
fi
run start
elif [ "$1" = "stop" ] ; then
run stop
fi
- 반영
/usr/lib/jvm/jre/bin/java -javaagent:/usr/share/signoz/opentelemetry-javaagent.jar -Dotel.exporter.otlp.endpoint=http://3.38.252.232:32528 -Dotel.resource.attributes=service.name=mathcell-iscreams-api"

'IT' 카테고리의 다른 글
[AWS] codepipeline으로 ecr 배포 (0) | 2024.04.09 |
---|---|
Python 환경(fastapi)에서 apm trace data 수집하기 (0) | 2024.04.09 |
Signoz 외부 서버에서 metric data 수집하기 (0) | 2024.04.09 |
외부 ElasticBeanstalk에서 개발한 환경에서 trace data 수집해오기 (frontend) (0) | 2024.04.09 |
Signoz data collector 설치하기 (frontend) (0) | 2024.04.09 |