正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。
ドキュメントに関する現在のご利用体験についてお聞かせください。アンケートにご協力ください。

Duoワークフロー

  • プラン: Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed
  • ステータス: 実験的機能

このデータソースは、GitLab Duo Agent Platformフロー分析エンジンから読み取ります。これはdap_impact_v1という名前の機能フラグによって制御されます。このフラグはデフォルトで無効になっています。管理者は、ユーザーまたはトップレベルグループに対してこれを有効にできます。

  • ユーザーに対して有効にすると、そのグループにフラグがあるかどうかにかかわらず、ユーザーが選択し読み取ることができるすべてのグループまたはプロジェクトのデータをクエリが返します。
  • トップレベルグループに対して有効にすると、選択したすべてのグループおよびプロジェクトが有効なトップレベルグループ内にある場合にクエリがデータを返します。

選択したグループまたはプロジェクトのいずれかが有効なトップレベルグループの外にあり、かつフラグがユーザーに対して有効になっていない場合、クエリはエラーを返します。

このデータソースは、プロジェクトまたはグループ全体で実行されたGitLab Duo Agent Platformフロー(Duoワークフローとも呼ばれます)に関する集計されたメトリクス(使用したクレジット数を含む)を提供します。

許可されるモード

許可されるスコープ

スコープ説明
project特定のプロジェクトでGitLab Duo Agent Platformフローをクエリします。
groupサブグループを含む、グループ内のすべてのプロジェクトでGitLab Duo Agent Platformフローをクエリします。

複数のグループまたはプロジェクトにわたってGitLab Duoワークフローを集計するには、in演算子を使用したリストを使用します。詳細については、複数のグループとプロジェクトを参照してください。

クエリフィルター

結果をフィルタリングするには、queryパラメータでこれらのフィールドを使用します。

フィールド名前(エイリアス)演算子
アクティブな日数activeDays=、>、<、>=、<=
作成日created(opened、openedAt、createdAt)=、>、<、>=、<=
フロータイプflowType=、!=、in、not in
使用されたフロータイプflowTypesUsed=、>、<、>=、<=
ステータスstatus=、!=、in、not in
ユーザーuser=、!=、in、not in

アクティブな日数

説明: ユーザーが選択した期間内にフローを作成した個別の日数でフローをフィルタリングします。activeDays = 1は、ちょうど1日だけアクティブだったユーザーに一致します。

許可される値の型: Number

ノート:

  • このカウントは、ユーザーごとの選択された期間全体を対象とします。
  • 範囲を指定するために2つの範囲演算子を組み合わせることができます。例: activeDays >= 2 and activeDays <= 5。ただし、同じフィールドに対して=を別の比較と組み合わせることはできません。

作成日

説明: フローを作成日でフィルタリングします。複数のcreated条件を使用して、指定した期間を定義します。

指定可能な値の型:

  • AbsoluteDate(形式はYYYY-MM-DD)
  • RelativeDate(形式は<sign><digit><unit>で、signは+、-、または省略、digitは整数、unitはd(日)、w(週)、m(月)、またはy(年)のいずれか)

ノート:

  • =演算子の場合、GLQLはユーザーのタイムゾーンでの00:00から23:59までの時間範囲を考慮します。

フロータイプ

説明: フローをそのタイプでフィルタリングします。例: software_development、code_review/v1。

指定可能な値の型:

  • String
  • List(複数の値にはinまたはnot in演算子を使用)

使用されたフロータイプ

説明: ユーザーが選択した期間内に実行した個別のフロータイプの数でフローをフィルタリングします。flowTypesUsed >= 2は、2つ以上のフロータイプを使用したユーザーに一致します。

許可される値の型: Number

ノート:

  • このカウントは、ユーザーごとの選択された期間全体を対象とします。
  • 同じ組み合わせルールが適用されます: 範囲を指定するために2つの範囲演算子を使用しますが、同じフィールドに対して=を別の比較と組み合わせることはできません。

ステータス

説明: フローをそのライフサイクルステータスでフィルタリングします。

指定可能な値の型:

  • Enum、created、running、paused、finished、failed、stopped、input_required、plan_approval_required、またはtool_call_approval_requiredのいずれか1つ
  • List(複数の値にはinまたはnot in演算子を使用)

ノート:

  • 3つの*_requiredステータスは、ユーザーの対応待ちのフローであり、pausedとは異なります。
  • ステータスは大文字と小文字を区別せずに照合されます。completedやabortedなどの他のつづりは受け付けられません。

ユーザー

説明: フローを実行したユーザーでフィルタリングします。

指定可能な値の型:

  • Number(ユーザーID)
  • List(複数のユーザーIDにはinまたはnot in演算子を使用)

ユーザー名によるフィルタリングのサポートはイシュー599750で追跡されています。

ディメンション

ディメンション名前説明
作成日created日付でグループ化します。daily、weekly、monthly、または30d(デフォルト: monthly)などの日数、およびオプションのoriginのgranularityパラメータを受け付けます。例: created(weekly)、created(granularity=30d, origin=2026-07-16)。
フロータイプflowTypeフロータイプでグループ化します。
グループgroupグループでグループ化します。トップレベルグループから数えたdepthパラメータを受け付け、1から99まで(デフォルト: 1)の値を取るため、groupはトップレベルグループを返し、group(depth=2)はそのサブグループを返します。その深さを超えるフロー、またはサブグループではなくその深さのプロジェクト内にあるフロー(たとえば、depth=2のときにトップレベルグループの直下にあるプロジェクト)にはグループがなく、結果にはグループなしの行が複数含まれる場合があります。
モデルmodelフローが使用したモデル(モデルカタログ名を表示)でグループ化します。カタログにないモデルは、その生の識別子を表示します。モデルの帰属がないフローには名前がありません。行はフローが報告したモデル識別子によってグループ化されるため、1つのカタログ名が複数の行またはチャートバーに表示されることがあります。
プロジェクトprojectプロジェクトでグループ化します。プロジェクトにスコープされていないフローは、プロジェクトなしの単一の行にグループ化されます。
ステータスstatusフローステータスでグループ化します。行はアルファベット順ではなく、ライフサイクル順にソートされます。
ユーザーuserユーザーでグループ化します(アバター、名前、ユーザー名を表示)。
ユーザー階層userTiercreated(weekly)などの別のディメンションも選択されている場合でも、選択した期間全体でユーザーが実行したフローの数によってユーザーをグループ化します。thresholdsパラメータが必要です: 少なくとも1以上の厳密に昇順の整数を1〜9個含むリストで、デフォルトはありません。たとえば、userTier(thresholds=[4, 25, 100])は、tier_0(4フロー未満)、tier_1(4〜24)、tier_2(25〜99)、およびtier_3(100以上)を返します。単一のしきい値は括弧なしで記述できます: userTier(8)。

メトリクス

メトリック名前説明
離脱ユーザー数churnedUsersCount前の期間にフローを実行したが、今回の期間には実行していない一意のユーザー数。
クローズされたMR数の最大値closedMrCountMax単一のフローによって作成された、クローズされたマージリクエストの最大数。
クローズされたMR数の平均値closedMrCountMeanフローごとに作成された、クローズされたマージリクエストの平均数。
クローズされたMR数の最小値closedMrCountMin単一のフローによって作成された、クローズされたマージリクエストの最小数。
クローズされたMR数の分位数closedMrCountQuantile指定された分位数における、フローごとに作成されたクローズされたマージリクエスト数。0.01と0.99の間のquantileパラメータを受け付けます(デフォルト: 0.5)。例: closedMrCountQuantile(0.95)。
クローズされたMR数の合計closedMrCountSumすべてのフローによって作成された、クローズされたマージリクエストの合計数。
作成されたMR数の最大値createdMrCountMax単一のフローによって作成されたマージリクエストの最大数。
作成されたMR数の平均値createdMrCountMeanフローごとに作成されたマージリクエストの平均数。
作成されたMR数の最小値createdMrCountMin単一のフローによって作成されたマージリクエストの最小数。
作成されたMR数の分位数createdMrCountQuantile指定された分位数における、フローごとに作成されたマージリクエスト数。0.01と0.99の間のquantileパラメータを受け付けます(デフォルト: 0.5)。例: createdMrCountQuantile(0.95)。
作成されたMR数の合計createdMrCountSumすべてのフローによって作成されたマージリクエストの合計数。
マージされたMRあたりのクレジット比率creditsPerMergedMrRatioフローによって作成され、後にマージされたマージリクエストごとに使用されたクレジット数。マージリクエストを作成しなかったフローも含め、すべてのフローからのクレジットがカウントされます。
使用クレジット数の最大値creditsUsedMax単一のフローによって使用されたクレジットの最大数。
使用クレジット数の平均値creditsUsedMeanフローごとに使用されたクレジットの平均数。
使用クレジット数の最小値creditsUsedMin単一のフローによって使用されたクレジットの最小数。
使用クレジット数の分位数creditsUsedQuantile指定された分位数における、フローごとに使用されたクレジット数。0.01と0.99の間のquantileパラメータを受け付けます(デフォルト: 0.5)。例: creditsUsedQuantile(0.95)。
使用クレジット数の合計creditsUsedSumすべてのフローによって使用されたクレジットの合計数。
フロータイプ数flowTypesCount一意のフロータイプの数。
参加ユーザー数joinedUsersCount今回の期間にフローを実行したが、前回の期間には実行していない一意のユーザー数。
マージされたMR数の最大値mergedMrCountMax単一のフローによって作成された、マージされたマージリクエストの最大数。
マージされたMR数の平均値mergedMrCountMeanフローごとに作成された、マージされたマージリクエストの平均数。
マージされたMR数の最小値mergedMrCountMin単一のフローによって作成された、マージされたマージリクエストの最小数。
マージされたMR数の分位数mergedMrCountQuantile指定された分位数における、フローごとに作成された、マージされたマージリクエスト数。0.01と0.99の間のquantileパラメータを受け付けます(デフォルト: 0.5)。例: mergedMrCountQuantile(0.95)。
マージされたMR数の合計mergedMrCountSumすべてのフローによって作成された、マージされたマージリクエストの合計数。
オープンMR数の最大値openMrCountMax単一のフローによって作成された、オープンのマージリクエストの最大数。
オープンMR数の平均値openMrCountMeanフローごとに作成された、オープンのマージリクエストの平均数。
オープンMR数の最小値openMrCountMin単一のフローによって作成された、オープンのマージリクエストの最小数。
オープンMR数の分位数openMrCountQuantile指定された分位数における、フローごとに作成された、オープンのマージリクエスト数。0.01と0.99の間のquantileパラメータを受け付けます(デフォルト: 0.5)。例: openMrCountQuantile(0.95)。
オープンMR数の合計openMrCountSumすべてのフローによって作成された、オープンのマージリクエストの合計数。
前の期間のユーザー数previousPeriodUsersCount前の期間の一意のユーザー数。
プロジェクト数projectsCount一意のプロジェクトの数。プロジェクトにスコープされていないフローはカウントされないため、それらのフローの行は0を示します。
再訪ユーザー数returningUsersCount前の期間にもフローを実行した一意のユーザー数。
合計数totalCountオプションでステータスによってフィルタリングされた、フローの総数。1つ以上のフローステータス(statusフィルターと同じ値)を持つオプションのstatusパラメータを受け付けます。例: totalCount(status="finished")またはtotalCount(status=["paused", "input_required"])。パラメータを指定しない場合、またはstatus=[]の場合、すべてのフローがカウントされます。
ユーザー数usersCount一意のユーザー数。

creditsPerMergedMrRatioを含むクレジットメトリクスには、グループまたはプロジェクトのオーナーまたはセキュリティマネージャーロール、あるいはread_agent_artifacts権限を持つカスタムロールが必要です。他のユーザーの場合、これらのメトリクスは空になります。

ノート:

  • returningUsersCount、joinedUsersCount、churnedUsersCount、およびpreviousPeriodUsersCountメトリクスは、各createdバケットを直前のものと比較するため、createdディメンションも選択されている場合にのみ有効です。createdフィルターだけでは不十分です。
  • mergedMrCount、closedMrCount、およびopenMrCountメトリクスは、フローが作成し、後にマージされた、マージせずにクローズされた、またはまだオープンであるマージリクエストをカウントします。これらはそれらのマージリクエストの現在の状態に遅れることがあるため、最近マージされたマージリクエストがオープンとしてカウントされ続けることがあります。

ソートフィールド

選択したディメンションまたはメトリクスに含まれる任意のフィールドでソートします。詳細については、分析モードのソートを参照してください。

例

  • 過去30日間のフロータイプ別のフロー:

    yaml
    ```glql
    title: "Duo workflows by flow type (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: flowType as "Flow"
    metrics: totalCount as "Flows", usersCount as "Users", creditsUsedSum as "Credits"
    sort: totalCount desc
    ```
  • 月次クレジット使用量の推移:

    yaml
    ```glql
    title: "Monthly Duo workflow credit usage trend"
    display: columnChart
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -90d
    dimensions: created(monthly) as "Month"
    metrics: creditsUsedSum as "Credits used"
    sort: created asc
    ```
  • チャットフローを除く月次クレジット使用量:

    yaml
    ```glql
    title: "Monthly Duo workflow credits, excluding chat"
    display: columnChart
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -90d and flowType not in ("chat", "agentic_chat/v1")
    dimensions: created(monthly) as "Month", flowType as "Flow"
    metrics: creditsUsedSum as "Credits used"
    sort: created asc
    ```
  • 過去30日間のモデル別クレジット:

    yaml
    ```glql
    title: "Duo workflow credits by model (last 30 days)"
    display: barChart
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: model as "Model"
    metrics: creditsUsedSum as "Credits used"
    sort: creditsUsedSum desc
    ```
  • 過去30日間のクレジット別トップユーザー:

    yaml
    ```glql
    title: "Top users by Duo workflow credits (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: user as "User"
    metrics: totalCount as "Flows", creditsUsedSum as "Credits", creditsUsedMean as "Avg credits per flow"
    sort: creditsUsedSum desc
    limit: 10
    ```
  • 過去30日間のステータス別フロー:

    yaml
    ```glql
    title: "Duo workflows by status (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: status as "Status"
    metrics: totalCount as "Flows", createdMrCountSum as "MRs created", mergedMrCountSum as "MRs merged", openMrCountSum as "MRs open"
    sort: status asc
    ```
  • 週次ユーザー維持率:

    yaml
    ```glql
    title: "Weekly Duo workflow user retention"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -90d
    dimensions: created(weekly) as "Week"
    metrics: usersCount as "Users", returningUsersCount as "Returning", joinedUsersCount as "Joined", churnedUsersCount as "Churned"
    sort: created desc
    ```
  • 過去30日間のアクティビティ階層およびフロータイプ別ユーザー:

    yaml
    ```glql
    title: "Duo workflow users by activity tier (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: userTier(thresholds=[4, 25, 100]) as "Tier", flowType as "Flow"
    metrics: totalCount as "Flows", usersCount as "Users"
    sort: userTier asc
    ```
  • 過去30日間のステータス別フロー数の比較:

    yaml
    ```glql
    title: "Duo workflows by outcome (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    metrics: totalCount as "All", totalCount(status="finished") as "Completed", totalCount(status=["paused", "input_required"]) as "Waiting", totalCount(status="failed") as "Failed"
    ```
  • 過去30日間のグループ比較:

    yaml
    ```glql
    title: "Duo workflow usage by subgroup (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    dimensions: group(depth=2) as "Group"
    metrics: usersCount as "Users", creditsUsedSum as "Credits"
    sort: usersCount desc
    ```
  • グループ化なしの全体使用状況:

    yaml
    ```glql
    title: "Duo workflow usage overview (last 30 days)"
    display: table
    mode: analytics
    query: type = DuoWorkflow and group = "gitlab-org" and created > -30d
    metrics: totalCount as "Flows", usersCount as "Users", projectsCount as "Projects", creditsUsedQuantile(0.5) as "Median credits"
    ```