Java Agent v2.1.2
Change (업데이트)
weaving 설정 추가
오픈소스 플러그인을 추적할 수 있는 weaving 설정을 추가하였습니다. +
기존의 weaving_reserved 설정과 동일한 기능을 가진 weaving 설정을 추가하였습니다. +
weaving=tomcat10
weaving_reserved=tomcat10
thread 중단 설정 추가
thread 동작 시간이 설정값을 초과하는 경우에 thread 중단 여부를 설정할 수 있도록 항목을 추가하였습니다.
기본 설정값은 false 입니다.
auto_thread_kill_elapsed=0
auto_thread_kill_enabled=false
Collection 모니터링 수정
Collection 클래스를 hooking 하는 기존 방식에서 CollectionHolder를 통해 간접적으로 Collection 클래스 정보를 조회 할 수 있도록 수정하였습니다.
Collection을 생성하는 클래스를 collection_nonstatic_holders 설정에 추가하여 Collection Map 메뉴에서 확인할 수 있습니다.
collection_nonstatic_holders=org.apache.catalina.session.ManagerBase
데이터베이스 호출시 에러 건수를 실시간 통계에 추가
데이터베이스 호출시 에러가 발생한 경우 실시간 통계에 에러 건수를 추가하도록 설정하였습니다.
Http, 데이터베이스 연결 실시간 로그 추가
Http, 데이터베이스 연결에 대한 실시간 로그를 추가하였습니다.
에이전트 로그에서 지정한 oname 표시
oname
을 -D
옵션으로 지정한 경우에도 에이전트로그에서 PID 대신에 에이전트 이름을 표시하도록 수정하였습니다.
jdbc url 추출 구분자 추가
jdbc url 추출시 '?', ';'를 기준으로 truncate 할 수 있도록 수정하였습니다.
';' 추가
log 오픈소스를 사용하는 경우 자동 인식 기능 추가
logback, log4j 오픈소스를 사용하는 경우, 또는 logging 문자열을 포함한 log 관련 오픈소스를 사용하는 경우 자동으로 hooking 옵션을 사용하지 않도록 기능을 추가하였습니다.
logsink 수집데이터 추가
logsink에서 수집하는 데이터를 추가하였습니다.
설정에 따라서 transaction id, login id, http host 데이터 수집 여부를 결정할 수 있습니다.
_logtag_enabled = false # tag
logtag_txid_enabled=false # transation id
logtag_login_enabled=false # login id
logtag_httphost_enabled=false # http host
HttpClient Timeout 적용 및 에러 처리
HttpClient에 timeout을 적용하고, timeout 발생시 에러처리를 할 수 있도록 기능을 추가하였습니다.
jmx pool 설정 추가
jmx pool object의 기본값을 수정하였습니다. jmx pool의 데이터소스 이름 사용 여부를 결정할 수 있는 옵션을 추가하였습니다. 데이터소스 이름을 등록하는 경우 jndi 방식을 실행하고, 이름을 등록하지 않은 경우 기본 url 방식으로 동작합니다.
jmx_pool_dsname_enabled=false
jmx_pool_object="*:type=DataSource,class=*,name=*"
배치 에이전트 active 시작 부분 수정
배치 프로세스의 Main thread에서 active stack을 남길 수 있도록 배치 에이전트를 수정하였습니다.
active stack의 thread 이름 표시 설정 추가
active stack의 thread 이름을 표시할 수 있도록 설정을 추가하였습니다.
active_stack_thread_name_enabled=false
yard 버전이 낮은 경우 true 설정시 프로토콜 오류로 에이전트 연결이 지속적으로 끊어집니다.
비동기 thread 이름을 표시 설정 추가
비동기 thread의 id와 이름을 표시할 수 있도록 설정을 추가하였습니다.
debug_async_thread_enabled=false
데이터 베이스 호출 URL 저장
데이터베이스 호출 URL을 저장하도록 수정하였습니다.
데이터 베이스 호출 hash값 제거
데이터베이스 호출 hash값을 ERROR 텍스트에서 제거하였습니다.
에이전트 실행 로고 수정
자바 에이전트 실행시 로고 내용을 수정하였습니다.
The Best Observability in Java
비동기 http 호출 에러 알림 메세지 수정
비동기 http 호출 에러 발생시 status code를 표시하도록 알림 메세지를 수정하였습니다.
에이전트 설정의 license 키 옵션 수정
whatap.conf에서 license와 accesskey 옵션을 모두 활용할 수 있도록 수정하였습니다.
# 동일한 기능
license=
accesskey=
자바 에이전트 메타태그 옵션명 수정
자바 에이전트 메타태그 옵션명을 수정하였습니다.
agent_meta_tags_enabled=true
New Feature (새 기능)
agent 환경 변수 제외값 추가
환경 변수 조회 기능에서 특정 키값을 입력하면 조회 항목에서 제외할 수 있도록 기능을 추가하였습니다.
구분자는 ','로 대소문자를 구분하지 않습니다. agent_env_system_enabled
, agent_env_jvm_enabled
설정과 연결하여 사용할 수 있습니다.
agent_env_system_enabled=false
agent_env_jvm_enabled=true
agent_env_ignore_keys=user.timezone,user.name,user.language
연계 서비스 상태 추적 기능 추가
target IP 혹은 서비스의 접속 상태를 로그 모니터링의 liveTail에서 확인할 수 있도록 연계 서비스 상태 추적 기능을 추가하였습니다.
logsink_rt_enabled
옵션을 true
로 설정하여 기능을 활성화 할 수 있고 #RemoteTrace
카테고리로 로그를 수집합니다.
-
정상 응답인 경우 level이 ok, 에러인 경우 level이 error 입니다.
-
정상 응답인 경우
logsink_rt_ok_interval
설정 간격에 맞추어서 로그를 기록합니다. 기본값은 30초 입니다. -
에러 응답인 경우
logsink_rt_error_interval
설정 간격에 맞추어서 로그를 기록합니다. 기본값은 5초 입니다.
logsink_rt_enabled=false
logsink_rt_error_interval=5000
logsink_rt_ok_interval=30000
Alibaba Druid ConnectionPool 추적 기능 추가
Alibaba Druid connection pool 을 추적할 수 있도록 기능을 추가하였습니다.
druid_pool_enabled=false
netstat 기능 추가
oshi 라이브러리 활용하여 netstat을 수집하는 기능을 추가하였습니다. 네트워크 지표들 중 packet, collision, drop, error, bps 데이터를 수집합니다.
oshi_netstat_enabled=false
debug_oshi_netstat_enabled=false
Fixed (버그 수정)
.x 플러그인 int 타입 인식 오류 수정
x 확장자를 사용하는 플러그인에서 int 타입을 인식하지 못하는 오류를 수정하였습니다.
배치 에이전트 getResultSet 오류 수정
배치 에이전트의 TraceSQL.getResultSet
오류를 수정하였습니다.
Http 호출 에러 시간설정 버그 수정
Http 호출시 에러 시간 max를 0으로 설정하여도 에러를 표시하는 버그를 수정하였습니다.
sql 추적시 LocalDate 추적하지 못하는 문제
sql 요청시 java.time.LocalDate
타입을 추적하지 못하는 문제를 수정하였습니다.
에이전트 로그 출력시 에러 수정
java.sql.Timestamp
타입을 활용하여 로그를 남기는 경우 에러가 발생하는 문제를 수정하였습니다.
클래스 시그니처 확인 버그 수정
에이전트 설정 메뉴의 클래스 시그니처 표시 요청할 때 java.lang.NullPointerException
발생하는 것을 수정하였습니다.
컨테이너 ID 추출 오류 수정
컨테이너 ID 추출 오류를 수정하였습니다.