TeamCity RESTAPI リファレンス 2026.1 ヘルプ

ビルド統計を取得する

この記事では、TeamCity RESTAPI を介してビルド統計にアクセスする一般的なユースケースについて説明します。

  • 分析またはデモ用の統計を取得します。

  • 特定のビルドの詳細を取得します。

  • サーバーからのメタデータを必要とする複雑なビルドロジックを構成します。

ビルド統計値を取得する

特定のビルドのすべてのビルド統計値を取得するには、次を使用します。

/app/rest/builds/<buildLocator>/statistics/

ここで、buildLocatorBuildLocator エンティティです。エンドポイントは Properties エンティティで応答します。

次の方法で特定の値を直接取得できます。

/app/rest/builds/<buildLocator>/statistics/<value_name>

エージェントワークロード統計を取得する

TeamCity UI のエージェント統計タブには、エージェントがビジー状態のときが表示されます。これにより、システムの負荷を見積もることができます。TeamCity RESTAPI を介して同じ情報を取得することが可能です。

特定のエージェントの最近のロード時間を取得するには、2 つの手順を実行する必要があります。まず、エージェント ID を確認します。

/app/rest/agents

サーバーは、エージェントエンティティを含むエージェントエンティティで応答します。この応答でエージェントの id プロパティを解析し、それを使用して次の要求を送信します。

/app/rest/builds?locator=agent:(id:<agent ID>)

ビルドがこのエージェントを正確に占有していた時期を確認するには、fields パラメーターを指定します。

/app/rest/builds?locator=agent:(id:<agent ID>)&fields=build(id,buildTypeId,queuedDate,startDate,finishDate)

応答には、エージェントがキューに入れられたとき、およびエージェントがこのビルドによって占有および解放されたときの詳細を含むタイムスタンプが含まれます。このデータを使用して、エージェントのビジー時間またはアイドル時間の合計を計算できます。

ビルドの詳細を取得する

ビルドの詳細を取得する必要があるほとんどの場合、次のリクエストで十分です。

GET /app/rest/builds/id:<build ID>

詳細を取得するには、ビルドのサブエンティティを使用できます。例: 上記の呼び出しによって取得された TestOccurrences エンティティは、デフォルトでは展開されません。ビルド内で実行されたテストの詳細を取得するには、TestOccurrences エンティティの href プロパティを使用できます。または、エンドポイントを変更することもできます。

GET /app/rest/builds?locator=id:8501&fields=build(id,testOccurrences(testOccurrence(id,name,status,duration)))

これにより、名前、ステータス、期間など、テストに関する最小限のデータが公開されます。

ビルド統計を取得する別の方法は、次のエンドポイントを使用することです。

/app/rest/builds/id:<build ID>/statistics

応答には、ビルドの統計値(ビルドステップの期間、テストの概要など)を含む Properties エンティティが含まれます。