Gitaly 클러스터(Praefect) 모니터링
Gitaly 클러스터(Praefect)를 모니터링하려면 Prometheus 메트릭을 사용할 수 있습니다. 다음 메트릭은 /metrics 엔드포인트에서 사용할 수 있습니다: gitaly_praefect_read_distribution, 읽기 분산을 추적하는 카운터.
Gitaly 클러스터(Praefect)를 모니터링하려면 Prometheus 메트릭을 사용할 수 있습니다. 메트릭을 스크레이핑할 수 있는 두 개의 개별 메트릭 엔드포인트가 있습니다:
- 기본
/metrics엔드포인트. - 데이터베이스 쿼리가 필요한 메트릭이 포함된
/db_metrics.
기본 Prometheus /metrics 엔드포인트#
다음 메트릭은 /metrics 엔드포인트에서 사용할 수 있습니다:
-
gitaly_praefect_read_distribution, 읽기 분산을 추적하는 카운터. 두 가지 레이블이 있습니다:virtual_storage.storage.
이는 이 Praefect 인스턴스에 대해 정의된 구성을 반영합니다.
-
gitaly_praefect_replication_latency_bucket, 복제 작업이 시작된 후 복제가 완료되는 데 걸리는 시간을 측정하는 히스토그램. -
gitaly_praefect_replication_delay_bucket, 복제 작업이 생성될 때와 시작될 때 사이에 경과하는 시간을 측정하는 히스토그램. -
gitaly_praefect_connections_total, Praefect에 대한 총 연결 수. -
gitaly_praefect_method_types, 노드당 접근자 및 변경자 RPC 수.
강한 일관성을 모니터링하려면 다음 Prometheus 메트릭을 사용할 수 있습니다:
gitaly_praefect_transactions_total, 생성되고 투표된 트랜잭션 수.gitaly_praefect_subtransactions_per_transaction_total, 노드가 단일 트랜잭션에 대해 투표를 캐스팅한 횟수. 단일 트랜잭션에서 여러 참조가 업데이트되는 경우 여러 번 발생할 수 있습니다.gitaly_praefect_voters_per_transaction_total: 트랜잭션에 참여하는 Gitaly 노드 수.gitaly_praefect_transactions_delay_seconds, 트랜잭션이 커밋될 때까지 기다리는 서버 측 지연.gitaly_hook_transaction_voting_delay_seconds, 트랜잭션이 커밋될 때까지 기다리는 클라이언트 측 지연.
저장소 확인을 모니터링하려면 다음 Prometheus 메트릭을 사용합니다:
gitaly_praefect_verification_jobs_dequeued_total, 작업자가 선택한 확인 작업 수.gitaly_praefect_verification_jobs_completed_total, 작업자가 완료한 확인 작업 수.result레이블은 작업의 최종 결과를 나타냅니다:valid는 예상된 복제본이 스토리지에 존재했음을 나타냅니다.invalid는 존재해야 할 복제본이 스토리지에 없었음을 나타냅니다.error는 작업이 실패했으며 재시도해야 함을 나타냅니다.
gitaly_praefect_stale_verification_leases_released_total, 해제된 오래된 확인 임대 수.
Praefect 로그도 모니터링할 수 있습니다.
데이터베이스 메트릭 /db_metrics 엔드포인트#
다음 메트릭은 /db_metrics 엔드포인트에서 사용할 수 있습니다:
gitaly_praefect_unavailable_repositories, 정상적인 최신 복제본이 없는 저장소 수.gitaly_praefect_replication_queue_depth, 복제 큐의 작업 수.gitaly_praefect_verification_queue_depth, 확인 대기 중인 복제본의 총 수.
