메트릭 딕셔너리 가이드
GitLab Service Ping 메트릭의 YAML 정의 형식, 유효성 검사 규칙, 메트릭 딕셔너리 구조를 설명합니다.
Service Ping 메트릭은 개별 YAML 파일 정의에서 정의되며, 이를 바탕으로 메트릭 딕셔너리 가 구축됩니다. 현재 메트릭 딕셔너리는 매 시간마다 자동으로 빌드됩니다. YAML 파일에서 메트릭에 대한 변경이 이루어지면, 해당 변경이 프로덕션에 배포된 후 1시간 이내에 딕셔너리에서 확인할 수 있습니다. YAML 파일에서 이벤트에 대한 변경이 이루어지면, 해당 변경이 master 브랜치에 머지된 후 1시간 이내에 딕셔너리에서 확인할 수 있습니다. 이 가이드는 딕셔너리와 그 구현 방식을 설명합니다. 메트릭 정의 및 유효성 검사 # JSON Schema 를 사용하여 메트릭 정의의 유효성을 검사합니다. 이 프로세스는 Service Ping에 정의된 메트릭의 일관성과 유효성을 보장하기 위한 것입니다. 모든 메트릭은 다음 조건을 충족해야 합니다: 정의된 JSON 스키마 를 준수해야 합니다. 고유한 key_path 를 가져야 합니다. 소유자(owner)가 있어야 합니다. 현재 tier 는 메트릭 정의 파일의 필수 필드 중 하나이지만, tier 를 tiers 로 교체하는 작업을 진행 중입니다. 이를 위해 메트릭 정의 파일에 tiers 를 필드로 추가하는 것도 유효합니다. 교체 프로세스가 완료될 때까지 tier 와 tiers 모두 메트릭 정의 파일에 추가할 수 있는 유효한 필드입니다. 모든 메트릭은 YAML 파일에 저장됩니다: config/metrics 메트릭 정의 YAML이 있고 상태가 removed 가 아닌 메트릭만 Service Ping JSON 페이로드에 추가됩니다. 각 메트릭은 여러 필드로 구성된 YAML 파일에 정의됩니다: 필드 필수 여부 추가 정보 key_path 예 메트릭의 JSON 키 경로, Service Ping 페이로드 내 위치. description 예 product_group 예 해당 메트릭을 소유하는 그룹. product_categories 예 배열; 메트릭이 나타내는 기능 카테고리. value_type 예 문자열; string, number, boolean, object 중 하나. status 예 문자열; 메트릭의 상태, active, removed, broken으로 설정 가능. time_frame 예 문자열 또는 배열; 7d, 28d, all, none 또는 none을 제외한 이 값들의 조합을 포함하는 배열로 설정 가능. data_source 예 문자열; database, redis, redis_hll, prometheus, system, license, internal_events 등의 값으로 설정 가능. data_category 예 문자열; 메트릭의 카테고리, operational, optional, subscription, standard로 설정 가능. 기본값은 optional. instrumentation_class 아니오 문자열; internal_events 이외의 data_source를 가진 메트릭에 사용됩니다. 메트릭을 구현하는 클래스를 참조하세요. performance_indicator_type 아니오 배