AutoMQ¶
AutoMQ 관련 지표 정보를 수집합니다.
설치 및 설정¶
1. AutoMQ에서 지표 활성화¶
AutoMQ 시작 명령을 조정합니다.
bin/kafka-server-start.sh ...\
--override s3.telemetry.metrics.exporter.type=prometheus \
--override s3.metrics.exporter.prom.port=8890 \
--override s3.metrics.exporter.prom.host=0.0.0.0 \
......
AutoMQ 노출 지표 포트는 8890이며, 브라우저에서 지표 관련 정보를 확인할 수 있습니다: http://clientIP:8890/metrics.
2. DataKit 수집기 설정¶
2.1 DataKit 설치¶
2.2 수집기 설정¶
AutoMQ는 metrics URL을 직접 노출할 수 있으므로, prom 수집기를 통해 직접 수집할 수 있습니다.
DataKit 설치 디렉터리의 conf.d/samples로 이동한 뒤, prom.conf.sample을 automq.conf로 복사합니다.
cp prom.conf.sample automq.conf
automq.conf 내용을 다음과 같이 조정합니다.
urls = ["http://clientIP:8890/metrics"]
source = "AutoMQ"
## Keep Exist Metric Name
## If the keep_exist_metric_name is true, keep the raw value for field names.
keep_exist_metric_name = true
[inputs.prom.tags_rename]
overwrite_exist_tags = true
[inputs.prom.tags_rename.mapping]
service_name = "job"
service_instance_id = "instance"
[inputs.prom.tags]
component="AutoMQ"
interval = "10s"
기타 설정은 필요에 따라 조정하세요
, 파라미터 설명은 다음과 같습니다.
- urls:
AutoMQ지표 주소이며, 여기에는 해당 구성 요소가 노출하는 지표 URL을 입력합니다. - source: 수집기 별칭으로, 구분해서 사용하는 것을 권장합니다.
- interval: 수집 간격
3. DataKit 재시작¶
지표¶
kafka 지표 집합¶
| 지표 | 설명 | 단위 |
|---|---|---|
| kafka_server_connection_count | 노드에서 현재 수립된 연결 수 | Gauge |
| kafka_network_threads_idle_rate | Kafka SocketServer 네트워크 스레드의 유휴 비율, 범위: [0, 1.0]. | Gauge |
| kafka_controller_active_count | 현재 Controller 노드가 active Controller인지 나타내는 지표이며, 값이 1이면 active, 0이면 non-active를 의미합니다. | Gauge |
| kafka_broker_active_count | 현재 클러스터의 활성 Broker 수입니다. | Gauge |
| kafka_broker_fenced_count | 현재 클러스터에서 fenced 상태인 Broker 수입니다. | Gauge |
| kafka_topic_count | 현재 클러스터의 Topic 총수입니다. | Gauge |
| kafka_partition_total_count | 현재 클러스터의 파티션 총수입니다. | Gauge |
| kafka_partition_offline_count | 현재 클러스터의 리더가 없는 파티션 총수입니다. | Gauge |
| kafka_stream_s3_object_count | 현재 클러스터에서 객체 스토리지로 업로드된 Object 총수이며, Object 상태별로 분류됩니다. | Gauge |
| kafka_stream_s3_object_size_bytes | 현재 클러스터에서 객체 스토리지로 업로드된 Object의 총 크기입니다. | byte |
| kafka_stream_stream_object_num | 현재 클러스터에서 객체 스토리지로 업로드된 StreamObject 수입니다. | Gauge |
| kafka_stream_stream_set_object_num | 현재 클러스터의 각 Broker에서 객체 스토리지로 업로드된 StreamSetObject 수입니다. | Gauge |
| kafka_message_count_total | Broker 노드가 수신한 메시지 총수이며, 시간에 대해 미분하면 메시지 처리량을 얻을 수 있습니다. | Counter |
| kafka_network_io_bytes_total | Broker 노드가 수신하고 송신한 메시지 크기의 총량이며, 시간에 대해 미분하면 메시지 크기 처리량을 얻을 수 있습니다. | Counter |
| kafka_request_size_bytes_total | Broker 노드가 수신한 요청 크기의 합계입니다. | Byte |
| kafka_topic_request_count_total | Broker 노드의 각 Topic이 수신한 요청 총수이며, produce와 fetch 두 종류의 요청만 포함합니다. | Counter |
| kafka_topic_request_failed_total | Broker 노드의 각 Topic 요청 실패 총수이며, produce와 fetch 두 종류의 요청만 포함합니다. | Counter |
| kafka_request_count_total | Broker 노드가 수신한 요청 총수입니다. | Counter |
| kafka_request_time_milliseconds_total | Broker 노드가 요청을 처리하는 데 걸린 총 시간입니다. | ms |
| kafka_request_queue_size | Broker 노드의 요청 큐 크기입니다. | Byte |
| kafka_response_queue_size | Broker 노드의 응답 큐 크기입니다. | Byte |
| kafka_partition_count | Broker 노드에 현재 할당된 파티션 수입니다. | Counter |
| kafka_log_size | Broker 노드의 각 파티션 메시지 크기입니다. | Byte |
자세한 지표 설명은 AutoMQ 공식 문서를 참고하세요.