Nacos¶
Nacos 성능 지표를 표시합니다. 여기에는 Nacos 온라인 시간, Nacos Config 장기 연결 수, Nacos Config 설정 개수, Service Count, HTTP 요청 횟수 등이 포함됩니다.
설치 및 설정¶
버전 지원¶
- 운영체제 지원: Linux / Windows
- Nacos 버전: >= 0.8.0
설명: 예시 Nacos 버전은 1.4.1입니다.
( Linux / Windows 환경은 동일합니다)
지표 수집 (필수)¶
application.properties파일을 설정하여 metrics 데이터를 노출합니다
- Nacos 재시작
클러스터 방식과 단일 인스턴스 모드의 시작 파라미터는 차이가 있으므로, 자세한 내용은 Nacos 공식 문서를 참고하세요.
- 검증
{ip}:8848/nacos/actuator/prometheus에 접속하여 metrics 데이터에 접근할 수 있는지 확인합니다
- DataKit Prometheus 플러그인 활성화
nacos-prom.conf설정 파일 수정
주요 파라미터 설명
- urls:
prometheus지표 주소로, 여기에는 Nacos가 노출하는 지표 url을 입력합니다 - source:수집기 별칭,
nacos로 쓰는 것을 권장합니다 - interval:수집 간격
- measurement_prefix:지표 접두사로, 지표 분류 조회에 편리합니다
- tls_open:TLS 설정
- metric_types:지표 유형, 비워 두면 모든 지표를 수집합니다
[[inputs.prom]]
urls = ["http://192.168.0.189:8848/nacos/actuator/prometheus"]
## url 요청 오류 무시
ignore_req_err = false
## 수집기 별칭
source = "nacos"
metric_types = []
measurement_prefix = "nacos_"
## 수집 간격 "ns", "us" (or "µs"), "ms", "s", "m", "h"
interval = "10s"
## TLS 설정
tls_open = false
## 사용자 정의 Tags
[inputs.prom.tags]
# some_tag = "some_value"
# more_tag = "some_other_value"
- DataKit 재시작
지표 상세 설명¶
JVM metrics¶
| 지표 | 의미 |
|---|---|
| system_cpu_usage | CPU 사용률 |
| system_load_average_1m | load |
| jvm_memory_used_bytes | 메모리 사용 바이트, 각 메모리 영역 포함 |
| jvm_memory_max_bytes | 메모리 최대 바이트, 각 메모리 영역 포함 |
| jvm_gc_pause_seconds_count | gc 횟수, 각 gc 포함 |
| jvm_gc_pause_seconds_sum | gc 소요 시간, 각 gc 포함 |
| jvm_threads_daemon | 스레드 수 |
Nacos 모니터링 지표¶
| 지표 | 의미 |
|---|---|
| http_server_requests_seconds_count | http 요청 횟수, 여러 항목(url, 메서드, code) 포함 |
| http_server_requests_seconds_sum | http 요청 총 소요 시간, 여러 항목(url, 메서드, code) 포함 |
nacos_timer_seconds_sum |
Nacos config 수평 알림 소요 시간 |
nacos_timer_seconds_count |
Nacos config 수평 알림 횟수 |
nacos_monitor{name='longPolling'} |
Nacos config 장기 연결 수 |
nacos_monitor{name='configCount'} |
Nacos config 설정 개수 |
nacos_monitor{name='dumpTask'} |
Nacos config 설정 디스크 기록 작업 적체 수 |
nacos_monitor{name='notifyTask'} |
Nacos config 설정 수평 알림 작업 적체 수 |
nacos_monitor{name='getConfig'} |
Nacos config 설정 읽기 통계 수 |
nacos_monitor{name='publish'} |
Nacos config 설정 쓰기 통계 수 |
nacos_monitor{name='ipCount'} |
Nacos naming ip 개수 |
nacos_monitor{name='domCount'} |
Nacos naming 도메인 개수(1.x 버전) |
nacos_monitor{name='serviceCount'} |
Nacos naming 서비스 개수(2.x 버전) |
nacos_monitor{name='failedPush'} |
Nacos naming 푸시 실패 수 |
nacos_monitor{name='avgPushCost'} |
Nacos naming 평균 푸시 소요 시간 |
nacos_monitor{name='leaderStatus'} |
Nacos naming 역할 상태 |
nacos_monitor{name='maxPushCost'} |
Nacos naming 최대 푸시 소요 시간 |
nacos_monitor{name='mysqlhealthCheck'} |
Nacos naming mysql 건강 상태 검사 횟수 |
nacos_monitor{name='httpHealthCheck'} |
Nacos naming http 건강 상태 검사 횟수 |
nacos_monitor{name='tcpHealthCheck'} |
Nacos naming tcp 건강 상태 검사 횟수 |
Nacos 예외 지표¶
| 지표 | 의미 |
|---|---|
nacos_exception_total{name='db'} |
데이터베이스 예외 |
nacos_exception_total{name='configNotify'} |
Nacos config 수평 알림 실패 |
nacos_exception_total{name='unhealth'} |
Nacos config server 간 건강 상태 검사 예외 |
nacos_exception_total{name='disk'} |
Nacos naming 디스크 쓰기 예외 |
nacos_exception_total{name='leaderSendBeatFailed'} |
Nacos naming leader 하트비트 전송 예외 |
nacos_exception_total{name='illegalArgument'} |
요청 파라미터가 올바르지 않음 |
nacos_exception_total{name='nacos'} |
Nacos 요청/응답 내부 오류 예외(읽기/쓰기 실패, 권한 없음, 파라미터 오류) |
더 많은 Nacos 지표는 Nacos 공식 웹사이트-모니터링을 참고하세요