GitLab 프로메테우스 메트릭 개발 지침

GitLab은 자체 모니터링을 위한 프로메테우스 메트릭을 제공합니다.

새로운 메트릭 추가하기

이 섹션에서는 자체 모니터링을 위해 새로운 메트릭을 추가하는 방법에 대해 설명합니다 (예제).

  1. 메트릭 유형을 선택합니다:

    • Gitlab::Metrics.counter
    • Gitlab::Metrics.gauge
    • Gitlab::Metrics.histogram
    • Gitlab::Metrics.summary
  2. 메트릭에 적합한 이름을 선택합니다. 프로메테우스 메트릭 이름에 대한 지침을 참조합니다.
  3. GitLab 프로메테우스 메트릭 목록을 업데이트합니다.
  4. 메트릭에 추가할 레이블을 신중하게 선택합니다. project_path 또는 project_id와 같은 고 카디널리티 값을 추가하는 것은 서비스 가용성에 영향을 줄 수 있으므로 강력히 권장되지 않습니다. 예를 들어, 10개의 버킷을 가진 히스토그램과 100가지 값을 갖는 레이블이 있다면, 내보내기 엔드포인트에서 각 레이블 집합이 새로운 항목으로 노출됩니다.
  5. 새로운 메트릭을 기록하는 관련 페이지 또는 코드를 실행합니다.
  6. 새로운 메트릭이 /-/metrics에 나타나는지 확인합니다.

특정 컨텍스트에 바운드되지 않은 메트릭(request, process, machine, namespace 등)의 경우, 크론을 기반으로 한 Sidekiq 작업에서 생성합니다:

  • 지오 관련 메트릭의 경우, Geo::MetricsUpdateService를 확인합니다.
  • 기타 “글로벌” / 인스턴스 전역 메트릭의 경우, Metrics::GlobalMetricsUpdateService를 확인합니다.

하나 이상의 Sidekiq 인스턴스에서 데이터를 내보낼 때, 항상 동일한 내보내기 도구가 쿼리될 것을 보장할 수 없습니다.

이슈 406583에서 자세한 정보를 읽고 주의사항을 이해할 수 있으며, 푸시 게이트웨이를 사용한 가능한 해결책에 대해 논의합니다.