TeamCity 2020.2 ヘルプ

カスタムチャート

統計タブで TeamCity によって自動的に生成された統計チャートに加えて、TeamCity によって提供された統計値のセットまたはビルドスクリプトから報告された値に基づいて独自の統計チャートを構成することができます。後者の場合、カスタム統計データを TeamCity に報告するようにビルドスクリプトを構成する必要があります。

ビルドパラメーターページで、ビルドによって報告された統計値を表示できます。

TeamCity Web UI を介したカスタムチャートの管理

TeamCity Web UI を使用して、カスタムチャートを管理することができます。

カスタムチャートを追加する

  • プロジェクトまたはビルド構成の統計タブには、新しいチャートを作成するためのオプションがあります。現在データソースとして追加できるビルド構成は 1 つだけです。より多くの設定は手動で追加することができます。

  • ビルド結果ページのパラメータータブには、報告された統計値のリストに新しいプロジェクトまたはビルド構成レベルチャートの統計タイプを選択するためのチェックボックスがあります。
    • プロジェクトレベルのチャートが選択したターゲットプロジェクトに追加されます。ルートプロジェクトをターゲットとして選択することはできません。

    • 選択したターゲットプロジェクトとそのサブプロジェクトのすべてのビルド構成に、ビルド構成レベルのチャートが追加されます。ターゲットとしてルートプロジェクトを指定すると、サーバー上で利用可能なすべてのビルド構成にチャートが追加されます。

カスタムチャートの修正

鉛筆のpencil.JPGアイコンを使用して、カスタムグラフを編集または削除します。統計値を追加ドロップダウンメニューには、サーバーに登録されているすべての統計値が、ビルドでフィルタリングされずに表示されることに注意してください。チャートの編集時に現在のビルド構成またはプロジェクトに存在しない値を選択すると、チャートは保存されません。

歯車のcog.JPGアイコンを使用して、Y 軸設定を構成し、すべてのユーザーのデフォルトとして保存することもできます。

TeamCity UI からチャートを編集するにはいくつかの制限があります。

カスタムチャートの並べ替え

プロジェクト / ビルド構成の場合はカスタムチャートを並べ替えるには、並べ替えボタンをクリックしてチャートをドラッグアンドドロップして必要に応じて配置し、変更を適用します。

カスタムチャートを手動で管理する

TeamCity Web UI に表示されるカスタムチャートを手動で作成するには、<TeamCity Data Directory>/config/projects/<ProjectID>/project-config.xml ファイルを構成します。ファイルには、カスタムチャートを含むすべてのプロジェクト機能を含む <project-extensions> 要素があります。チャートごとに <extention> 要素が追加されます。

TeamCity Web UI でカスタムチャートを表示する

TeamCity にカスタムチャートを Web UI に表示させるには、<TeamCity Data Directory>/config/projects/<ProjectID>/project-config.xml 構成ファイルを更新して、新しい <extention> サブエレメントを <project-extensions> エレメントに追加します。

各エクステンションは、プロジェクト内で固有の id を持たなければなりません。

type 属性は

  • プロジェクトレベルのチャートの project-graphs

  • ビルド構成レベルのチャート用の buildType-graphs

Each chart is described by the <parameters> element. It must contain the <param> sub-elements with data shown in the chart in name/value pairs; the series parameter uses the JSON format to list series of data shown on the chart.

以下の例を参照してください。

project-config.xml のカスタムビルド構成レベルのチャート

<project-extensions>  <extension id="customChart1" type="buildtype-graphs">    <parameters>      <param name="title" value="Custom chart"/>      <param name="hideFilters" value="showFailed"/>      <param name="seriesTitle" value="Some key"/>      <param name="format" value="duration"/>      <param name="series"><![CDATA[[ {  "type": "valueType",  "key": "BuildDuration",  "title": "duration1",  "sourceBuildTypeId": "my_first_configuration_id" }, {  "type": "valueType",  "key": "customKey",  "title": "Custom data",  "color": "#ee0055 " }, {  "type": "valueTypes",  "pattern": "buildStageDuration:*",  "title": "Stage: {1}" } ]]]>      </param>      <param name="properties.width" value="300"/>      <param name="properties.height" value="300"/>      <param name="properties.axis.y.type" value="logarithmic"/>      <param name="properties.axis.y.includeZero" value="false"/>      <param name="properties.axis.y.max" value="10000"/>    </parameters>  </extension>  <extension id="secondChart" type="buildtype-graphs">    <parameters>      <param name="title" value="empty"/>    </parameters>  </extension> </project-extensions>

このチャートは、project-config.xml ファイルが配置されているプロジェクトとそのすべてのサブプロジェクトのビルド構成の統計タブに表示されます。すべてのビルド構成のチャートを表示するには、それをルートプロジェクトproject-config.xml に追加します。

パラメーターリファレンス

名前

説明

title

チャートの上のタイトル。

seriesTitle

チャートで使用されているシリーズのリストの上のタイトル(単数形)。デフォルトは Serie です。

defaultFilters

デフォルトでチェックされるコンマ区切りのオプションのリスト。以下を含めることができます。

  • showFailed – include results from failed builds by default.

  • averaged – by default, show averaged values on the chart.

hideFilters

チャートの横に表示されない、コンマ区切りのフィルター名のリスト。

  • all – hide all filters.

  • series – hide series filter (チャートに指定された特定の valueType からのデータのみを表示することはできません。)

  • range – hide the date range filter.

  • showFailed – hide the checkbox which allows including data for failed builds.

  • averaged – hide the checkbox which allows viewing averaged values.

デフォルト:空(すべてのフィルターが表示されます)。

format

y 軸値のフォーマットサポートされている形式は次のとおりです。

  • text、値は浮動小数点数として扱われます。

  • integer、整数値のみ。

  • duration、データはミリ秒単位でなければなりません。

  • percent、データはパーセント単位(0 から 100 まで)でなければなりません。

  • percentby1、フォーマットはパーセントとして 0 から 1 までのデータを表示します(0 から 100 まで)。

  • size、データはバイト単位である必要があります。

形式が指定されていない場合は、数値形式が使用されます。

series パラメーターは JSON 形式を使用して、チャートに表示される一連のデータをリストします。各シリーズは別々の色で描かれており、フィルターを使用してシリーズを選択できます。

名前

説明

type

  • valueType は、チャートに表示されている一連のデータについて説明しています。各シリーズは別々の色で描かれており、フィルターを使用してシリーズを選択することができます。

  • valueTypespattern によってチャート上にいくつかの系列を表示することを可能にします ( 以下に説明する)

key

valueType の名前(シリーズ)。 BuildDurationArtifactsSize のように TeamCity によって事前定義することができます(事前定義された統計値の完全なリストについては下記を参照)、またはビルドスクリプトから報告することによって独自のデータを提供することができます。

title

シリーズセレクタに表示されるシリーズ名。デフォルトは <key> です。いくつかのシリーズでは、パターングループマーカーを使用することができます。{1} はパターンの最初のキャプチャーされたグループを表し、{0} はパターン全体を表します。

sourceBuildTypeId

このフィールドでは、与えられたシリーズのデータを使用するためのビルド構成を明示的に指定できます。チャートがプロジェクトレベルで追加される場合、このフィールドはチャートで使用される最初の valueType に必須です。それ以外の場合はオプションです。ただし、TeamCity は次の規則に従ってデータを取得するためのビルド構成を選択します。

  1. sourceBuildTypeIdvalueType 内に設定されている場合、データは別のプロジェクトに属していてもこのビルド構成から取得されます。

  2. sourceBuildTypeId が現在の valueType 内に設定されていないが、それがチャート内の現在の valueType 上に設定されている場合は、上で参照したビルド構成からのデータが取得されます。上記の plugin-settings.xml ファイルの例を参照してください。

  3. sourceBuildTypeId が現在の valueType 内に設定されておらず、上記に設定されていない場合、チャートには現在のビルド構成のデータが表示されます。つまり、このチャートはビルド構成でのみ機能します。

color

チャートで使用されるシリーズの色。標準の Web カラーフォーマット("#RRGGBB" ;、色名など)を使用できます。詳細については、HTML カラーリファレンス(英語)および HTML カラーネームリファレンス(英語)を参照してください。指定しない場合、シリーズタイトルに基づいて自動色が割り当てられます。

pattern

Pattern for names of the Value Types (or series) to be shown on the chart. The asterisk ( * ) sign is allowed to filter Value Types (or series) either predefined by TeamCity, like BuildDuration or ArtifactsSize (see below for the complete list of predefined statistic values), or your own data can be provided by reporting it from the build script.

チャートディメンション

param 要素の properties.width および properties.height 属性を使用して、カスタムチャートの幅 / 高さをピクセル単位で設定できます。: <param name="properties.width" value="300"/>.

チャート軸設定

properties で始まるパラメーター名(たとえば、properties.axis.y.type)を使用して、グラフのデフォルトの軸設定をカスタマイズすることもできます。

サポートされているプロパティ:

名前

説明

properties.axis.y.type

  • 標準スケールの場合は linear (デフォルト)。

  • 対数 Y 軸スケールの logarithmic

properties.axis.y.includeZero

ゼロ値が Y 軸に含まれるかどうか:

  • true (デフォルト)

  • false (ゼロは含まれていません)

properties.axis.y.min

Y 軸を開始する整数値。

properties.axis.y.max

Y 軸値の最大値として使用する整数値。

TeamCity が提供するデフォルトの統計値

以下の表は、カスタムチャートの設定に使用できる定義済みの値プロバイダを示しています。ビルドごとに報告される値は、ビルド構成設定によって異なります。

You can view the all statistic values reported by the build on the ビルド結果 | パラメーター | 報告された統計値 tab: For each of the values, a statistics chart is available on clicking the View Trend icon ViewTrend.PNG .

キー

説明

単位

ArtifactsSize

アーティファクトディレクトリ内のすべてのアーティファクトファイルサイズの合計

バイト数

VisibleArtifactsSize

非表示のアーティファクトを除くすべてのアーティファクトファイルサイズの合計 ( .teamcity ディレクトリに配置されたもの)

バイト数

buildStageDuration:artifactsPublishing

ビルド内のアーティファクト公開ステップの期間

ミリ秒

buildStageDuration:buildStepRunner_<N>

The duration of each step. The build step names are generated automatically to avoid issues when a build step name is too long or a build step is renamed. The ID of each step can be found in the XML file of the build configuration.

ミリ秒

buildStageDuration:sourcesUpdate

ソースチェックアウトステップの期間

ミリ秒

buildStageDuration:dependenciesResolving

ビルドの依存関係を解決する期間

ミリ秒

BuildDuration

ビルド期間 (すべての構築段階)

ミリ秒

BuildDurationNetTime

ビルドステップの期間 (チェックアウト、アーティファクトの公開時間などを除く)

ミリ秒

CodeCoverageB

ブロックレベルのコードカバレッジ

%

CodeCoverageC

クラスレベルのコードカバレッジ

%

CodeCoverageL

回線レベルのコードカバレッジ

%

CodeCoverageM

メソッドレベルのコードカバレッジ

%

CodeCoverageR

ブランチカバレッジ

%

CodeCoverageS

ステートメントのカバレッジ

%

CodeCoverageAbsBCovered

カバーブロック数

整数

CodeCoverageAbsBTotal

総ブロック数

整数

CodeCoverageAbsCCovered

対象クラス数

整数

CodeCoverageAbsCTotal

クラスの総数

整数

CodeCoverageAbsLCovered

カバーされた行数

整数

CodeCoverageAbsLTotal

総行数

整数

CodeCoverageAbsMCovered

対象となるメソッドの数

整数

CodeCoverageAbsMTotal

メソッドの総数

整数

CodeCoverageAbsRCovered

カバーブランチの数

整数

CodeCoverageAbsRTotal

ブランチの総数

整数

CodeCoverageAbsSCovered

対象ステートメントの数

整数

CodeCoverageAbsSTotal

ステートメントの総数

整数

DuplicatorStats

見つかったコード重複の数

整数

TotalTestCount

ビルド内のテストの総数

整数

PassedTestCount

ビルドで成功したテストの数

整数

FailedTestCount

ビルドで失敗したテストの数

整数

IgnoredTestCount

ビルドで無視されたテストの数

整数

InspectionStatsE

ビルド内のインスペクションエラーの数

整数

InspectionStatsW

ビルド内のインスペクション警告の数

整数

SuccessRate

ビルドが成功したかどうかの指標

0 - 失敗しました、1 - 成功

TimeSpentInQueue

ビルドがキューにとどまっていた期間

ミリ秒

カスタムビルドメトリクス

事前定義されたビルドメトリックがニーズをカバーしていない場合は、ビルドスクリプトから TeamCity にカスタムメトリックを報告し、使用してカスタムチャートを作成できます。カスタムメトリクスを TeamCity に報告する方法は 2 つあります。

カスタム値キーは一意である必要があり、TeamCity によって事前定義された値キーと干渉してはならないことに注意してください。