https://kroki.io/graphviz/svg/eNpNjj0LwjAQhnd_xdHBTXCXCnVxsN2ki4hcmzMehqRcUvCD_nf7Rep29zz3voliLdg84AjfFYCgfSqW9HzY9Zt1iuDiH9hQWrnXdWC-raZAbVofSG7bMQhgsCKTJie8PxEKZzk4YathDbnTup-S3XhXO-MkrUxL017AZY4WFIRrn1wnkUfRF0SaRZoZkhB5GXnJvkXDHwzs7KS71fDOZv_XeSdSczgfzNLbf0Jrkllmg1zKFfvG4HuU3Q9PE19_
- 이렇게 각 단계는 Kafka에서 모니터링과 로깅을 어떻게 관리하는지에 대한 일련의 과정을 나타낸다.
- 예를 들어, 메트릭을 수집한 후에는 이를 로그로 저장하고, 필요한 경우 알림을 발송한 다음, 이 모든 데이터를 시각화하여 관리자가 쉽게 확인할 수 있도록 한다.
1. Metrics (메트릭)
- 정의: Kafka의 성능과 상태를 측정하는 데이터 포인트들이다.
- 도구: JMX, Prometheus 등을 사용할 수 있다.
- 예시:
- Producer와 Consumer의 처리량
- 레플리케이션 지연 시간
- 파티션의 상태 등
2. Logs (로그)
- 정의: Kafka의 작동 상태나 이벤트, 에러 등을 기록하는 데이터이다.
- 도구: Logstash, Kibana 등을 사용할 수 있다.
- 예시:
- Broker의 상태 변화
- Consumer의 offset 처리 상황
- 에러 메시지 등
3. Alerts (알림)
- 정의: 특정 조건에 도달했을 때 알림을 발생시키는 기능이다.
- 도구: Alertmanager, Grafana 등을 사용할 수 있다.
- 예시:
- 디스크 사용량이 특정 임계값을 초과했을 때
- Consumer가 일정 시간동안 메시지를 처리하지 못했을 때 등