제품 분석 API
Tier: Ultimate
Offering: GitLab.com, Self-managed
Status: Beta
Status: Beta
- GitLab 15.4에서
cube_api_proxy
라는 플래그와 함께 도입되었습니다. 기본적으로 비활성화되어 있습니다.- GitLab 15.10에서
cube_api_proxy
가 제거되고product_analytics_internal_preview
로 대체되었습니다.- GitLab 15.11에서
product_analytics_internal_preview
가product_analytics_dashboards
로 대체되었습니다.- GitLab 16.11에서
product_analytics_dashboards
가 기본적으로 활성화되었습니다.- GitLab 17.1에서 기능 플래그
product_analytics_dashboards
가 제거되었습니다.- GitLab 17.5에서 베타로 변경되고 기능 플래그
product_analytics_features
가 추가되었습니다.
이 기능의 사용 가능성은 기능 플래그에 의해 제어됩니다.
자세한 내용은 이력서를 참조하세요.
이 기능은 프로덕션 사용에 준비되지 않았습니다.
큐브에 쿼리 요청 보내기
Cube API를 쿼리하는 데 사용할 수 있는 액세스 토큰을 생성합니다. 예를 들면:
POST /projects/:id/product_analytics/request/load
POST /projects/:id/product_analytics/request/dry-run
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id |
정수 | 예 | 현재 사용자가 읽기 액세스 권한이 있는 프로젝트의 ID입니다. |
include_token |
부울 | 아니오 | 응답에 액세스 토큰을 포함할지 여부입니다. (펀넬 생성을 위해서만 필요합니다.) |
요청 본문
로드 요청의 본문은 유효한 Cube 쿼리여야 합니다.
TrackedEvents
를 측정할 때는 dimensions
및 timeDimensions
에 대해 TrackedEvents.*
를 사용해야 합니다. 세션을 측정할 때에도 동일한 규칙이 적용됩니다.추적된 이벤트 예제
{
"query": {
"measures": [
"TrackedEvents.count"
],
"timeDimensions": [
{
"dimension": "TrackedEvents.utcTime",
"dateRange": "이번 주"
}
],
"order": [
[
"TrackedEvents.count",
"desc"
],
[
"TrackedEvents.docPath",
"desc"
],
[
"TrackedEvents.utcTime",
"asc"
]
],
"dimensions": [
"TrackedEvents.docPath"
],
"limit": 23
},
"queryType": "multi"
}
세션 예제
{
"query": {
"measures": [
"Sessions.count"
],
"timeDimensions": [
{
"dimension": "Sessions.startAt",
"granularity": "day"
}
],
"order": {
"Sessions.startAt": "asc"
},
"limit": 100
},
"queryType": "multi"
}
Cube에 메타데이터 요청 보내기
분석 데이터에 대한 Cube 메타데이터를 반환합니다. 예를 들어:
GET /projects/:id/product_analytics/request/meta
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id |
정수 | 예 | 현재 사용자가 읽기 권한이 있는 프로젝트의 ID입니다. |