製品分析API
- GitLab 15.4 で
cube_api_proxy
というフラグで導入されました。デフォルトでは無効になっています。cube_api_proxy
GitLab 15.10 で削除され、product_analytics_internal_preview
に置き換えられました。product_analytics_internal_preview
GitLab 15.11でproduct_analytics_dashboards
。
フラグ: セルフマネジメントのGitLabでは、デフォルトではこの機能は利用できません。プロジェクトごと、またはインスタンス全体で利用できるようにするには、管理者がcube_api_proxy
という機能フラグを有効にします。GitLab.comでは、この機能は利用できません。この機能はまだ本番環境では使用できません。
キューブにクエリ要求を送信します。
Cube API へのクエリに使用できるアクセストークンを生成します。例えば、以下のようになります:
POST /projects/:id/product_analytics/request/load
POST /projects/:id/product_analytics/request/dry-run
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数。 | yes | 現在のユーザーが読み取りアクセス権を持っているプロジェクトのID。 |
include_token | boolean | いいえ | アクセストークンをレスポンスに含めるかどうか。(ファネル生成にのみ必要です。) |
リクエストボディ
ロード要求の本文は、有効なキューブ・クエリである必要があります。
TrackedEvents
を測定する場合は、dimensions
およびtimeDimensions
にTrackedEvents.*
を使用する必要があります。Sessions
を測定する場合も、同じルールが適用されます。追跡イベントの例
{
"query": {
"measures": [
"TrackedEvents.count"
],
"timeDimensions": [
{
"dimension": "TrackedEvents.utcTime",
"dateRange": "This week"
}
],
"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"
}
キューブへのメタデータ要求の送信
アナリティクス・データのキューブ・メタデータを返します。例えば
GET /projects/:id/product_analytics/request/meta
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数。 | yes | 現在のユーザーが読み取りアクセス権を持っているプロジェクトのID。 |
プロジェクトのファンネルのリスト
プロジェクトのすべてのファンネルをリストアップします。例えば
GET /projects/:id/product_analytics/funnels
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数。 | yes | 現在のユーザーが開発者ロールを持っているプロジェクトの ID。 |