Work
[Kafka Connect] 참고 - Telegraf로 커넥트 메트릭 수집하기
sw_develop
2025. 2. 3. 21:42
1. jolokia agent 실행
- 실행 위치 : 커넥트 실행 서버 내부
실행 방법
1) jolokia agent jar 다운로드
sudo wget https://repo.maven.apache.org/maven2/org/jolokia/jolokia-agent-jvm/2.0.0/jolokia-agent-jvm-2.0.0-javaagent.jar
2) docker-compose.yml 에 KAFKA_JMX_OPTS을 설정하여 커넥트 jar 실행 시 -javaagent 옵션 지정
- cf)
ex) live 환경 docker-compose.yml
- 위의 설정으로 컨테이너 실행 후 curl -X GET {서버 ip}:8778/jolokia/ 호출하여 실행 확인 가능
2. telegraf.conf 파일 내 jolokia agent input plugin 추가
- 경로 : /etc/telegraf/telegraf.conf
[[inputs.jolokia2_agent]]
urls = ["http://localhost:8778/jolokia"]
name_prefix = "kafka.connect."
[[processors.enum]]
[[processors.enum.mapping]]
field = "status"
[processors.enum.mapping.value_mappings]
stopped = -2
paused = -1
running = 0
unassigned = 1
failed = 2
destroyed = 3
[inputs.jolokia2_agent.tags]
input_type = "kafka-connect"
[[inputs.jolokia2_agent.metric]]
name = "connectorMetrics"
mbean = "kafka.connect:type=connector-metrics,connector=*"
paths = ["connector-class", "connector-version", "connector-type", "status"]
tag_keys = ["connector"]
[[inputs.jolokia2_agent.metric]]
name = "connectorTaskMetrics"
mbean = "kafka.connect:type=connector-task-metrics,connector=*,task=*"
paths = ["batch-size-avg", "batch-size-max", "offset-commit-avg-time-ms", "offset-commit-failure-percentage", "offset-commit-max-time-ms", "offset-commit-success-percentage", "pause-ratio", "running-ratio", "status"]
tag_keys = ["connector", "task"]
[[inputs.jolokia2_agent.metric]]
name = "connectWorkerRebalanceMetrics"
mbean = "kafka.connect:type=connect-worker-rebalance-metrics"
paths = ["completed-rebalances-total", "connect-protocol", "epoch", "leader-name", "rebalance-avg-time-ms", "rebalance-max-time-ms", "rebalancing", "time-since-last-rebalance-ms"]
참고)
- telegraf.conf 구성
- Connect Metrics 종류
- https://docs.confluent.io/platform/current/connect/monitoring.html#use-jmx-to-monitor-kconnect → kafka connect
- https://www.mongodb.com/docs/kafka-connector/current/monitoring/ → mongo kafka source connector
3. telegraf 재시작
- telegraf.conf 파일 수정 후 재시작 필요함
sudo systemctl status telegraf
sudo systemctl restart telegraf