scouter
scouter copied to clipboard
JIRA에 agent.java 적용시 발생하는 오류
안녕하세요, 그간 사내 다양한 환경에서 scouter를 잘 활용해 모니터링을 해왔습니다.
이번에는 JIRA에 agent.java를 붙여 모니터링을 진행해보려 했는데, xlog나 성능 메트릭들은 정상적으로 수집이 되는데 JIRA log에 아래와 같은 로그가 대량으로 쌓이는 이슈가 발생했습니다.
Exception in thread "pool-61-thread-7" java.lang.ClassCastException: scouter.agent.wrapper.async.WrTask cannot be cast to java.util.concurrent.ScheduledFuture at com.exalate.util.concurrent.ResubmittingScheduledThreadPoolExecutor.afterExecute(ResubmittingScheduledThreadPoolExecutor.java:61) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
해당 오류가 너무 빠른 속도로 많이 쌓여 agent 사용이 어려운 상태입니다. 이 경우엔 어떻게 조치해야 할까요?
JIRA 버전은 v8.13.2, JDK 버전은 1.8이고, agent.java는 2.17.1 버전의 JDK1.8 이상 에이전트입니다.
옵션은 JIRA의 setenv.sh 파일에 아래와 같이 넣었습니다.
JVM_SUPPORT_RECOMMENDED_ARGS="-javaagent:[파일 경로]/scouter.agent.jar -Dobj_name=OBJ01 -Dnet_collector_ip=[수집서버ip] -Dcounter_interaction_enabled=true -Datlassian.org.osgi.framework.bootdelegation.extra=jdk.internal.reflect,jdk.internal.reflect.*,scouter,scouter.*"
혹시 JIRA plugin이 agent와 충돌하여 해당 오류가 발생했을 가능성도 있을까요? JIRA에서 exalate 플러그인을 enable 해 사용하고 있는데, 해당 플러그인을 disable하면 오류가 발생하지 않습니다.
확인 부탁드립니다. 감사합니다.
특정 환경에서 발생하는 것 같은데 패치를 위한 재현이 어려울 듯 합니다.
우선 java agent config 에서 아래 옵션을 끄고 사용해 해보시기 바랍니다.
hook_async_thread_pool_executor_enabled=false
답변 감사드립니다! 해당 옵션 끄고 나니 오류는 더 이상 발생하지 않습니다.
그런데 혹시 이 옵션을 끄고 나면 비동기 동작들은 트레이싱이 안 되는 건가요? 옵션 위에 아래와 같이 Description이 달려 있어 추가 문의드립니다.
hook threadpool executor for tracing async processing