Resin
설치 구성
참고: 예시 Resin 버전은 Windows 환경의 Resin/4.0.66 (Windows)입니다.
지표 수집은 jolokia-jvm-agent를 통해 Resin 런타임 지표를 수집합니다.
Resin 지표 수집 활성화
config/resin.properties 설정
jvm_args를 추가하며, 매개변수 설명은 다음과 같습니다.
javaagent:jolokia-jvm-agent
- port=9530 #
jolokia-jvm-agent가 외부에 노출하는 지표 포트
jvm_args : -Xmx2048m -XX:MaxPermSize=256m -javaagent:C:/"Program Files"/datakit/data/jolokia-jvm-agent.jar=port=9530
resin.exe를 두 번 클릭합니다.
DataKit 수집기 설정
- DataKit JVM 플러그인을 활성화하고
sample 파일을 복사합니다.
cd datakit/conf.d/samples
cp jvm.conf.sample jvm.conf
주요 매개변수 설명
- urls:
jolokia agent 접근 주소
- interval:수집 주기
- inputs.jvm.metric:jvm 관련 지표
# {"version": "1.2.12", "desc": "이 줄을 수정하지 마세요"}
[[inputs.jvm]]
# default_tag_prefix = ""
# default_field_prefix = ""
# default_field_separator = "."
# username = ""
# password = ""
# response_timeout = "5s"
## 선택적 TLS 설정
# tls_ca = "/var/private/ca.pem"
# tls_cert = "/var/private/client.pem"
# tls_key = "/var/private/client-key.pem"
# insecure_skip_verify = false
## 모니터링 간격
interval = "10s"
# 조회할 에이전트 URL 추가
urls = ["http://localhost:9530/jolokia/"]
## 읽을 지표 추가
[[inputs.jvm.metric]]
name = "resin_runtime"
mbean = "java.lang:type=Runtime"
paths = ["Uptime","StartTime","VmVersion","SpecName"]
[[inputs.jvm.metric]]
name = "resin_memory"
mbean = "java.lang:type=Memory"
paths = ["HeapMemoryUsage", "NonHeapMemoryUsage", "ObjectPendingFinalizationCount"]
[[inputs.jvm.metric]]
name = "resin_garbage_collector"
mbean = "java.lang:name=*,type=GarbageCollector"
paths = ["CollectionTime", "CollectionCount"]
tag_keys = ["name"]
[[inputs.jvm.metric]]
name = "resin_threading"
mbean = "java.lang:type=Threading"
paths = ["TotalStartedThreadCount", "ThreadCount", "DaemonThreadCount", "PeakThreadCount"]
[[inputs.jvm.metric]]
name = "resin_class_loading"
mbean = "java.lang:type=ClassLoading"
paths = ["LoadedClassCount", "UnloadedClassCount", "TotalLoadedClassCount"]
[[inputs.jvm.metric]]
name = "resin_memory_pool"
mbean = "java.lang:name=*,type=MemoryPool"
paths = ["Usage", "PeakUsage", "CollectionUsage"]
tag_keys = ["name"]
[inputs.jvm.tags]
# some_tag = "some_value"
# more_tag = "some_other_value"
# ...
- DataKit을 재시작합니다(로그를 활성화해야 하는 경우, 로그 수집을 먼저 설정한 뒤 재시작하세요).
지표
지표 세트 resin_runtime
| 지표 |
설명 |
Uptime |
가동 시간 |
StartTime |
시작 시간 |
VmVersion |
가상 머신 버전 |
SpecName |
Java 가상 머신 사양 이름 |
지표 세트 resin_memory
| 지표 |
설명 |
HeapMemoryUsage |
힙 메모리 |
NonHeapMemoryUsage |
비힙 메모리 |
지표 세트 resin_threading
| 지표 |
설명 |
TotalStartedThreadCount |
총 시작 스레드 수 |
ThreadCount |
활성 스레드 수 |
DaemonThreadCount |
데몬 스레드 수 |
PeakThreadCount |
최대값 |
지표 세트 resin_class_loading
| 지표 |
설명 |
| LoadedClassCount |
현재 로드된 클래스 수 |
| UnloadedClassCount |
총 언로드된 클래스 수 |
| TotalLoadedClassCount |
총 로드된 클래스 수 |
지표 세트 resin_memory_pool
| 지표 |
설명 |
| Usage |
사용 중인 메모리 풀 |
| PeakUsage |
사용 중인 메모리 풀 최대값 |
| CollectionUsage |
가비지 수집 시 사용량 |
지표 세트 resin_garbage_collector
| 지표 |
설명 |
| CollectionTime |
GC 시간 |
| CollectionCount |
GC 횟수 |