DevOps Research and Assessment (DORA) 핵심 지표 API
Tier: Ultimate
Offering: GitLab.com, Self-managed, GitLab Dedicated
- GitLab 13.10에서 소개.
- 레거시 키/값 쌍
{ "<date>" => "<value>" }
은 GitLab 14.0에서 페이로드에서 제거되었습니다.time_to_restore_service
메트릭은 GitLab 14.9에서 소개되었습니다.
DORA 지표를 GraphQL API로도 검색할 수 있습니다.
모든 방법은 적어도 기자 역할이 필요합니다.
프로젝트 수준 DORA 지표 가져오기
프로젝트 수준의 DORA 지표를 가져옵니다.
GET /projects/:id/dora/metrics
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id
| 정수/문자열 | 예 | 인증된 사용자가 액세스할 수 있는 프로젝트의 ID 또는 URL 인코딩된 경로 |
metric
| 문자열 | 예 |
deployment_frequency , lead_time_for_changes , time_to_restore_service 또는 change_failure_rate 중 하나
|
end_date
| 문자열 | 아니오 | 종료할 날짜 범위. ISO 8601 날짜 형식, 예: 2021-03-01 . 기본값은 현재 날짜입니다.
|
environment_tiers
| 문자열 배열 | 아니오 |
환경의 티어. 기본값은 production
|
interval
| 문자열 | 아니오 | 버킷 구간 중 하나. all , monthly 또는 daily 중 하나. 기본값은 daily
|
start_date
| 문자열 | 아니오 | 시작할 날짜 범위. ISO 8601 날짜 형식, 예: 2021-03-01 . 기본값은 3개월 전입니다.
|
예시 요청:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/dora/metrics?metric=deployment_frequency"
예시 응답:
[
{ "date": "2021-03-01", "value": 3 },
{ "date": "2021-03-02", "value": 6 },
{ "date": "2021-03-03", "value": 0 },
{ "date": "2021-03-04", "value": 0 },
{ "date": "2021-03-05", "value": 0 },
{ "date": "2021-03-06", "value": 0 },
{ "date": "2021-03-07", "value": 0 },
{ "date": "2021-03-08", "value": 4 }
]
그룹 수준 DORA 지표 가져오기
그룹 수준의 DORA 지표를 가져옵니다.
GET /groups/:id/dora/metrics
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id
| 정수/문자열 | 예 | 인증된 사용자가 액세스할 수 있는 프로젝트의 ID 또는 URL 인코딩된 경로 |
metric
| 문자열 | 예 |
deployment_frequency , lead_time_for_changes , time_to_restore_service , 또는 change_failure_rate 중 하나
|
end_date
| 문자열 | 아니오 | 종료할 날짜 범위. ISO 8601 날짜 형식, 예: 2021-03-01 . 기본값은 현재 날짜입니다.
|
environment_tiers
| 문자열 배열 | 아니오 |
환경의 티어. 기본값은 production
|
interval
| 문자열 | 아니오 | 버킷 구간 중 하나. all , monthly 또는 daily 중 하나. 기본값은 daily
|
start_date
| 문자열 | 아니오 | 시작할 날짜 범위. ISO 8601 날짜 형식, 예: 2021-03-01 . 기본값은 3개월 전입니다.
|
예시 요청:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/dora/metrics?metric=deployment_frequency"
예시 응답:
[
{ "date": "2021-03-01", "value": 3 },
{ "date": "2021-03-02", "value": 6 },
{ "date": "2021-03-03", "value": 0 },
{ "date": "2021-03-04", "value": 0 },
{ "date": "2021-03-05", "value": 0 },
{ "date": "2021-03-06", "value": 0 },
{ "date": "2021-03-07", "value": 0 },
{ "date": "2021-03-08", "value": 4 }
]
value
필드
위의 프로젝트 및 그룹 수준 엔드포인트 모두에 대해 API 응답의 value
필드는 제공된 metric
쿼리 매개변수에 따라 다른 의미를 가집니다:
metric 쿼리 매개변수
| 응답에서의 value 설명
|
---|---|
deployment_frequency
| API는 해당 기간 동안 성공적인 배포의 총 횟수를 반환합니다. Issue 371271에서는 API를 전체 수 대신 일일 평균을 반환하도록 업데이트하는 제안을 합니다. |
change_failure_rate
| 해당 기간 동안 프로덕션 환경에서만 사용할 수 있는 사고의 수를 배포 횟수로 나눈 값입니다. |
lead_time_for_changes
| 해당 기간 동안 배포된 모든 MR에 대해 MR 병합 및 MR 커밋의 배포 간의 중간 순간 수입니다. |
time_to_restore_service
| 해당 기간 동안 프로덕션 환경에서만 사용할 수 있는 사고가 열린 후의 중간 시간(초)입니다. |
참고:
API는 일일 중앙값 값을 계산하여 월간
및 전체
간격을 반환합니다. 이로 인해 반환된 데이터에 약간의 부정확성이 발생할 수 있습니다.