Gitaly 모니터링
Gitaly 모니터링에 대해 설명합니다.
사용 가능한 로그와 Prometheus 메트릭 을 사용하여 Gitaly를 모니터링합니다. 메트릭 정의는 다음에서 사용 가능합니다: Gitaly에 대해 구성된 Prometheus /metrics 엔드포인트에서 직접. Prometheus에 대해 구성된 Grafana 인스턴스에서 Grafana Explore 를 사용하여. Gitaly는 요청 동시성(적응형 또는 비적응형)에 따라 요청을 제한하도록 구성할 수 있습니다. Gitaly 동시성 제한 모니터링 # Gitaly 로그와 Prometheus를 사용하여 동시성 대기 요청 의 특정 동작을 관찰할 수 있습니다. Gitaly 로그 에서 다음과 같은 항목으로 pack-objects 동시성 제한과 관련된 로그를 식별할 수 있습니다: 로그 필드 설명 limit.concurrency_queue_length 진행 중인 호출의 RPC 유형에 특정한 큐의 현재 길이를 나타냅니다. 동시성 제한으로 인해 처리 대기 중인 요청 수에 대한 통찰력을 제공합니다. limit.concurrency_queue_ms 동시 RPC 제한으로 인해 요청이 큐에서 대기한 기간(밀리초)을 나타냅니다. 이 필드는 동시성 제한이 요청 처리 시간에 미치는 영향을 이해하는 데 도움이 됩니다. limit.concurrency_dropped 제한에 도달하여 요청이 삭제된 경우 이 필드는 이유를 지정합니다: max_time (요청이 최대 허용 시간보다 오래 큐에서 대기) 또는 max_size (큐가 최대 크기에 도달). limit.limiting_key 제한에 사용된 키를 식별합니다. limit.limiting_type 제한되는 프로세스의 유형을 지정합니다. 이 컨텍스트에서 per-rpc 는 동시성 제한이 RPC별 기준으로 적용됨을 나타냅니다. 예: { "limit.concurrency_queue_length" : 1 , "limit.concurrency_queue_ms" : 0 , "limit.limiting_key" : "@hashed/79/02/7902699be42c8a8e46fbbb450172651786b22c56a189f7625a6da49081b2451.git" , "limit.limiting_type" : "per-rpc" } Prometheus에서 다음 메트릭을 확인합니다: gitaly_concurrency_limiting_in_progress 는 처리 중인 동시 요청 수를 나타냅니다. gitaly_concurrency_limiting_queued 는 동시성 제한에 도달하여 특정 리포지터리에 대한 RPC 요청이 대기 중인 수를 나타냅니다. gitaly_concurrency_limiting_acquiring_seconds 는 처리되기 전에 동시성 제한으로 인해 요청이 대기해야 하는 시간을 나타냅니다. gitaly_requests_dropped_total 은 요청 제한으로 인해 삭제된 요청의 총 수를 제공합니다. reason 레이블은 요청이 삭제된 이유를 나타냅니다: max_size : 동시성 큐 크기에 도달했기 때문입니다. max_tim
