- 인사이트 보기
- 인사이트 차트와 상호작용
- 프로젝트 인사이트 구성
- 그룹 통찰력 구성
- 통찰력 구성 파일
- 통찰력 구성 매개변수
- 전체 인사이트 구성 예시
인사이트
프로젝트와 그룹에 대한 인사이트를 구성하여 다음과 같은 데이터를 탐색하세요:
- 지정된 기간 동안 생성되고 닫힌 이슈.
- 병합 요청이 병합되는 평균 시간.
- 티리지 위생.
또한 그룹에 적합한 맞춤형 인사이트 보고서를 생성할 수 있습니다.
인사이트 보기
선행 조건:
- 프로젝트 인사이트의 경우, 프로젝트에 대한 액세스 권한과 병합 요청 및 이슈에 대한 정보를 볼 수 있는 권한이 있어야 합니다.
- 그룹 인사이트의 경우, 그룹을 볼 수 있는 권한이 있어야 합니다.
프로젝트 또는 그룹의 인사이트를 보려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
- 분석 > 인사이트를 선택합니다.
- 보고서를 보려면 보고서 선택 드롭다운 목록을 선택합니다.
심층 링크로 인사이트 보고서 액세스
심층 링크 URL을 사용하여 사용자를 인사이트의 특정 보고서로 직접 안내할 수 있습니다.
심층 링크를 생성하려면, 인사이트 보고서 URL 뒤에 보고서 키를 추가하세요.
예를 들어, 키가 bugsCharts
인 GitLab 보고서는 심층 링크 URL https://gitlab.com/gitlab-org/gitlab/insights/#/bugsCharts
를 가집니다.
인사이트 차트와 상호작용
인사이트 차트와 상호작용하여 그룹의 활동에 대한 세부 정보를 볼 수 있습니다.
다양한 보고서 표시
인사이트 페이지에 사용 가능한 보고서 중 하나를 표시하려면, 보고서 선택 드롭다운 목록에서 표시할 보고서를 선택하세요.
막대 차트 주석 보기
주석을 보려면 차트의 각 막대 위에 마우스를 올리세요.
차트 확대
인사이트는 지난 90일의 데이터를 표시합니다. 90일 범위의 하위 집합에서만 데이터를 표시하도록 확대할 수 있습니다.
이를 위해, 일시 중지 아이콘()을 선택하고 수평 축을 따라 슬라이드하세요:
- 시작 날짜를 변경하려면 왼쪽 일시 중지 아이콘을 왼쪽 또는 오른쪽으로 슬라이드합니다.
- 종료 날짜를 변경하려면 오른쪽 일시 중지 아이콘을 왼쪽 또는 오른쪽으로 슬라이드합니다.
차트에서 차원 제외
기본적으로, 인사이트는 차트에 모든 사용 가능한 차원을 표시합니다.
차원을 제외하려면 차트 아래의 범례에서 차원의 이름을 선택하세요.
차트 세분화
모든 차트에서 query.data_source
가 issuables
인 데이터로 세분화할 수 있습니다.
특정 우선순위 또는 심각도에 대한 데이터의 세분화 보고서를 보려면:
- 차트에서 세분화할 막대 스택을 선택하세요.
프로젝트 인사이트 구성
선행 조건:
- 프로젝트 구성에 따라, 최소한 개발자 역할이 있어야 합니다.
프로젝트 인사이트는 프로젝트의 .gitlab/insights.yml
파일로 구성됩니다. 프로젝트에 구성 파일이 없는 경우, 그룹 구성을 사용합니다.
.gitlab/insights.yml
파일은 다음을 정의하는 YAML 파일입니다:
- 보고서의 차트 구조 및 순서.
- 프로젝트 또는 그룹의 보고서에 표시되는 차트 스타일.
프로젝트 인사이트를 구성하려면, .gitlab/insights.yml
파일을 다음 위치 중 하나에 생성하세요:
- 로컬에서 프로젝트의 루트 디렉토리에 파일을 생성하고 변경 사항을 푸시합니다.
- UI에서:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 파일 목록 위에서 커밋할 브랜치를 선택하고, 더하기 아이콘을 선택한 다음 새 파일을 선택합니다.
-
파일 이름 텍스트 박스에
.gitlab/insights.yml
을 입력합니다. - 큰 텍스트 박스에서 파일 내용을 업데이트합니다.
- 변경 사항 커밋을 선택합니다.
구성 파일을 생성한 후, 해당 파일을 프로젝트의 그룹에서도 사용할 수 있습니다.
그룹 통찰력 구성
GitLab은 기본 구성 파일에서 통찰력을 읽습니다.
그룹 통찰력을 구성하려면:
- 그룹에 속한 프로젝트에서
.gitlab/insights.yml
파일을 생성합니다. - 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 설정 > 일반을 선택합니다.
- 분석을 확장하고 통찰력 섹션을 찾습니다.
-
.gitlab/insights.yml
구성 파일이 포함된 프로젝트를 선택합니다. - 변경 사항 저장을 선택합니다.
통찰력 구성 파일
.gitlab/insights.yml
파일에서:
- 구성 매개변수는 차트 동작을 정의합니다.
- 각 보고서에는 고유한 키와 가져와서 표시할 차트 모음이 있습니다.
- 각 차트 정의는 키-값 쌍으로 구성된 해시로 이루어져 있습니다.
다음 예시는 하나의 차트로 하나의 보고서를 표시하는 단일 정의를 보여줍니다.
bugsCharts:
title: "이슈 차트"
charts:
- title: "월별 생성된 버그"
description: "월별로 생성된 열린 버그"
type: bar
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
group_by: month
period_limit: 24
통찰력 구성 매개변수
다음 표는 차트 매개변수를 나열합니다:
키워드 | 설명 |
---|---|
title |
차트의 제목. 이는 통찰력 페이지에 표시됩니다. |
description |
개별 차트에 대한 설명. 이는 관련 차트 위에 표시됩니다. |
type |
차트의 유형: bar , line 또는 stacked-bar . |
query |
차트를 위한 데이터 소스 및 필터링 조건을 정의하는 해시입니다. |
title
title
을 사용하여 차트 제목을 업데이트합니다. 제목은 통찰력 보고서에 표시됩니다.
예시:
monthlyBugsCreated:
title: "월별 생성된 버그"
description
description
을 사용하여 차트에 대한 설명을 추가합니다. 설명은 제목 아래 차트 위에 표시됩니다.
예시:
monthlyBugsCreated:
title: "월별 생성된 버그"
description: "월별로 생성된 열린 버그"
type
type
을 사용하여 차트 유형을 정의합니다.
지원되는 값:
이름 | 예시: |
---|---|
bar |
![]() |
bar (시간 시리즈, 즉 group_by 사용 시) |
![]() |
line |
![]() |
stacked-bar |
![]() |
dora
데이터 소스는 bar
및 line
차트 유형을 지원합니다.
예시:
monthlyBugsCreated:
title: "월별 생성된 버그"
type: bar
query
query
를 사용하여 차트를 위한 데이터 소스 및 필터링 조건을 정의합니다.
예시:
monthlyBugsCreated:
title: "월간 생성된 버그"
description: "월별로 생성된 열린 버그"
type: bar
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
collection_labels:
- S1
- S2
- S3
- S4
group_by: week
period_limit: 104
data_source
매개변수가 없는 레거시 형식도 여전히 지원됩니다:
monthlyBugsCreated:
title: "월간 생성된 버그"
description: "월별로 생성된 열린 버그"
type: bar
query:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
collection_labels:
- S1
- S2
- S3
- S4
group_by: week
period_limit: 104
query.data_source
data_source
를 사용하여 데이터를 노출하는 데이터 소스를 정의합니다.
지원되는 값:
-
issuables
: 병합 요청 또는 이슈 데이터를 노출합니다. -
dora
: DORA 메트릭스를 노출합니다.
issuable
쿼리 매개변수
query.params.issuable_type
query.params.issuable_type
을 사용하여 차트를 생성할 이슈 유형을 정의합니다.
지원되는 값:
-
issue
: 차트가 이슈 데이터를 표시합니다. -
merge_request
: 차트가 병합 요청 데이터를 표시합니다.
query.params.issuable_state
query.params.issuable_state
를 사용하여 쿼리된 이슈의 현재 상태로 필터링합니다.
기본적으로, opened
상태 필터가 적용됩니다.
지원되는 값:
-
opened
: 열린 이슈 또는 병합 요청. -
closed
: 닫힌 이슈 또는 병합 요청. -
locked
: 토론이 잠긴 이슈 또는 병합 요청. -
merged
: 병합된 병합 요청. -
all
: 모든 상태의 이슈 또는 병합 요청.
query.params.filter_labels
query.params.filter_labels
를 사용하여 쿼리된 이슈에 적용된 레이블로 필터링합니다.
기본적으로 레이블 필터가 적용되지 않습니다. 정의된 모든 레이블은 이슈에 적용되어야 선택됩니다.
예시::
monthlyBugsCreated:
title: "월간 생성된 회귀"
type: bar
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
- regression
query.params.collection_labels
query.params.collection_labels
를 사용하여 구성된 레이블별로 이슈를 그룹화합니다. 기본적으로 그룹화가 적용되지 않습니다.
예시:
weeklyBugsBySeverity:
title: "주간 버그 심각도별"
type: stacked-bar
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
collection_labels:
- S1
- S2
- S3
- S4
query.group_by
query.group_by
를 사용하여 차트의 X축을 정의합니다.
지원되는 값:
-
day
: 데이터를 일별로 그룹화합니다. -
week
: 데이터를 주별로 그룹화합니다. -
month
: 데이터를 월별로 그룹화합니다.
query.period_limit
query.period_limit
를 사용하여 이슈 블록을 쿼리할 때 얼마나 과거로 거슬러 올라갈지를 정의합니다( query.period_field
사용).
단위는 query.group_by
에 정의된 값과 관련이 있습니다. 예를 들어,
query.group_by: 'day'
로 정의하고, query.period_limit: 365
로 설정하면, 차트는 지난 365일의 데이터를 표시합니다.
기본적으로, 정의한 query.group_by
에 따라 기본 값이 적용됩니다.
query.group_by |
기본값 |
---|---|
day |
30 |
week |
4 |
month |
12 |
query.period_field
query.period_field
를 사용하여 이슈 블록을 그룹화할 기준이 되는 타임스탬프 필드를 정의합니다.
지원되는 값:
-
created_at
(기본값):created_at
필드를 사용하여 데이터를 그룹화합니다. -
closed_at
:closed_at
필드를 사용하여 데이터를 그룹화합니다(문제에 한정). -
merged_at
:merged_at
필드를 사용하여 데이터를 그룹화합니다(병합 요청에 한정).
period_field
는 자동으로 다음으로 설정됩니다.
-
query.issuable_state
가closed
인 경우closed_at
-
query.issuable_state
가merged
인 경우merged_at
- 그 외의 경우
created_at
참고: 이 버그가 해결될 때까지,
merged_at
대신 created_at
이 표시될 수 있습니다. 대신 created_at
이 사용됩니다.
DORA
쿼리 매개변수
- GitLab 15.3에서 도입됨.
dora
데이터 소스를 사용하여 DORA 차트 정의를 만들기 위해 DORA 특정 쿼리를 사용하십시오.
예시:
dora:
title: "DORA 차트"
charts:
- title: "DORA 배포 빈도"
type: bar # 또는 line
query:
data_source: dora
params:
metric: deployment_frequency
group_by: day
period_limit: 10
projects:
only:
- 38
- title: "변경에 대한 DORA 리드 타임"
description: "변경에 대한 DORA 리드 타임"
type: bar
query:
data_source: dora
params:
metric: lead_time_for_changes
group_by: day
environment_tiers:
- staging
period_limit: 30
query.metric
query.metric
를 사용하여 DORA 메트릭을 정의합니다.
지원되는 값:
-
deployment_frequency
(기본값) lead_time_for_changes
time_to_restore_service
change_failure_rate
query.group_by
query.group_by
를 사용하여 차트의 X축을 정의합니다.
지원되는 값:
-
day
(기본값): 하루 단위로 데이터를 그룹화합니다. -
month
: 월 단위로 데이터를 그룹화합니다.
query.period_limit
query.period_limit
를 사용하여 과거에 메트릭이 쿼리되는 정도를 정의합니다(기본값: 15). 최대 기간은 180일 또는 6개월입니다.
query.environment_tiers
query.environment_tiers
를 사용하여 계산에 포함할 환경 배열을 정의합니다.
지원되는 값:
-
production
(기본값) staging
testing
development
other
projects
projects
를 사용하여 이슈가 조회되는 위치를 제한하세요:
- 그룹의 인사이트에
.gitlab/insights.yml
이 사용되는 경우,projects
를 사용하여 이슈를 조회할 프로젝트를 정의합니다. 기본적으로 그룹 내 모든 프로젝트가 사용됩니다. - 프로젝트의 인사이트에
.gitlab/insights.yml
이 사용되는 경우, 다른 프로젝트를 명시해도 결과가 나타나지 않습니다. 기본적으로 프로젝트가 사용됩니다.
projects.only
projects.only
를 사용하여 이슈가 조회되는 프로젝트를 지정하세요.
이 매개변수에 나열된 프로젝트는 다음과 같은 경우 무시됩니다:
- 존재하지 않는 경우.
- 현재 사용자가 이를 읽을 수 있는 충분한 권한이 없는 경우.
- 그룹 외부에 있는 경우.
예:
monthlyBugsCreated:
title: "월별 생성된 버그"
description: "월별로 생성된 열린 버그"
type: bar
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
projects:
only:
- 3 # 프로젝트 ID를 사용할 수 있습니다.
- groupA/projectA # 또는 전체 프로젝트 경로
- groupA/subgroupB/projectC # 하위 그룹의 프로젝트도 포함될 수 있습니다.
- groupB/project # 그룹 외부의 프로젝트는 무시됩니다.
전체 인사이트 구성 예시
.projectsOnly: &projectsOnly
projects:
only:
- 3
- groupA/projectA
- groupA/subgroupB/projectC
bugsCharts:
title: "버그에 대한 차트"
charts:
- title: "월별 생성된 버그"
description: "월별로 생성된 열린 버그"
type: bar
<<: *projectsOnly
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
group_by: month
period_limit: 24
- title: "심각도별 주간 버그"
type: stacked-bar
<<: *projectsOnly
query:
data_source: issuables
params:
issuable_type: issue
issuable_state: opened
filter_labels:
- bug
collection_labels:
- S1
- S2
- S3
- S4
group_by: week
period_limit: 104
- title: "팀별 월별 버그"
type: line
<<: *projectsOnly
query:
data_source: issuables
params:
issuable_type: merge_request
issuable_state: opened
filter_labels:
- bug
collection_labels:
- 관리
- 계획
- 생성
group_by: month
period_limit: 24