「Builds」ページではデプロイメント全体のビルド概要だけでなく、特定のビルドや Agent (イニシエーター) の実行に関する情報など IncrediBuild で行われたビルド*のさまざまな詳細をご覧になれます。このページに表示される値はフィルターを使って絞り込むことができます。
*本マニュアルページとダッシュボードにて使用している「ビルド」という用語は、コンパイルやリンクなどのいわゆる「ビルド」処理だけでなく、IncrediBuild で行われたすべての実行処理を指します。
メニュー:
フィルター
「Builds」ページに表示するデータを絞り込むことができます。
注: 本ページにて表示される値は、ビルド フィルターで絞り込んだビルドの情報のみが反映された値となります。
ページ ヘッダー
ページ左上の「Build Overview」下の [Valid For] には日時が表示されますが、これはページの最終更新時にデータが最後に更新された日時となります。ここに表示される日時がページ内で期間フィルターを適用する際の現在時刻となります。データは 1 時間ごとに自動的に更新されます。期間フィルターで設定される期間は現在時刻に基づきます。
注: ページを再読み込みすると現在時刻を手動で更新できます。但し、更新した場合は、設定されたフィルターがリセットされ、全てのパラメーターがデフォルトの数値に戻されます。
期間フィルター
期間フィルターを使用すると、Buildsページに表示されるデータをフィルターし、指定した期間のデータのみ含まれるデータとして表示します。
プリセットされた期間のボタンをクリックして期間を指定するか、カスタムで時間範囲を作成する事も可能です。
プリセットの時間範囲は下表の通りです。
注: 以下の説明ではデータの最終更新日時を現在時刻としています。
項目 | 説明 |
---|---|
12H | 現在時刻から 12 時間前までに実行されたビルドのデータを含めます。 |
24H | 現在時刻から 24 時間前までに実行されたビルドのデータを含めます。デフォルトで選択されています。 |
Today | 現在日の 00:00 から現在時刻までに実行されたビルドのデータを含めます。 |
カスタムの時間範囲を設定する方法
- ページ ヘッダーで [Custom] をクリックします。
2.[Pick a Date Range] 画面が表示されます。
3.[From Date] をクリックします。
- カレンダーが表示されます。
- 日付を選択します。
- デフォルトで現在日が選択されています。
- • 前の月に移動するにはカレンダー上部の左向き矢印をクリックし、選択したい日をクリックします。
- [OK] をクリックします。
4. [To Date] フィールドも同様に選択します。
プロダクト フィルター
特定の(単一もしくは複数の)プロダクトに関連するビルドのみを集計対象にします。フィルターを適用する前に「Configuration」ページの「Product 設定 」タブでプロダクトのプロフィールを作成する必要があります。
.
プロダクト フィルターの設定方法
[Products] フィールドをクリックします。
複数選択可能なプロダクトリストが表示されます。
含めたいプロダクトの横にあるチェックボックスをオンにします。
注:
- フィルターが適用されると [Product] フィールドに赤字でプロダクト名が表示されます。
- デフォルトではビルドコマンドによる絞り込みなしで、すべてのビルドが表示されます。
- プロダクトを未作成の場合は [Add Products] オプションがドロップダウン メニューに表示されます。
ビルドタイプ フィルター
特定タイプのビルドに絞り込んで表示できます。ビルドタイプは複数選択できます。
注: Visual Studio IDE または BuildConsole コマンドラインから実行されたビルドは Visual Studio ビルドとしてビルドタイプに登録されています。その他のビルドや処理は「Unknown」として表示されます。
ビルドタイプは下表の通りです。
タイプ | 説明 |
---|---|
Build | Visual Studio ソリューションまたはプロジェクトのインクリメンタル ビルド。 |
Clean | Visual Studio ソリューションまたはプロジェクトのクリーン ビルド。 |
Rebuild | Visual Studio ソリューションまたはプロジェクトのリビルド (クリーンしてからのビルド)。 |
Unknown | Visual Studio ビルド以外の IncrediBuildによる実行処理。 |
ビルドタイプフィルターの設定方法
- ページ ヘッダーの [Build Type] フィールドをクリックします。
- 複数選択可能なビルドタイプリストが表示されます。
- 表示したいビルドタイプの横にあるチェックボックスをオンにします。
- フィルターが適用され、選択したビルドタイプが表示されます。
注: デフォルトではすべてのビルドタイプが表示されます。
ビルド KPI サマリー
ヘッダー下のビルド KPI サマリーには IncrediBuild インフラで行われたビルドに関する集計されたデータによる KPI 値の統計が表示されます。
注:
- ページ内のすべてのデータ (KPI サマリーを含む) はビルド フィルターで絞り込んだ値に基づいています。
- 選択した期間にて、 選択したプロダクト タイプ / 選択したビルド タイプ/選択したAgent グループによって開始されたビルドのみがデータとして使用されます。
KPI サマリーには次の情報が表示されます。
カテゴリー | 説明 |
---|---|
Builds Executed | IncrediBuild で実行されたビルドの合計数。 |
Build Status | Successful - IncrediBuild により実行され、正常に完了したビルド数。 |
Avg. Build Duration | IncrediBuild で実行した各ビルドの平均実行時間。 |
Distributed [%] | 合計時間に対するローカル Agent とリモート Agent で行われた処理の割合。この値はリモート Agent コアで実行したビルドの合計時間を、すべての Agent (ローカルとリモート) で実行したビルドの合計時間で割って算出されます。例えば、ローカル Agent と 9 台のリモート Agent でビルドを 1 時間行った場合、リモート Agent コアで行った処理の合計時間 (9 時間) をビルドの合計時間 (10 時間) で割って、分散処理されたタスクの割合 (90%) を算出します。 |
Builds Execution Over Time ディスプレイ
このセクションでは時間の経過に伴うビルドの KPI の推移をグラフで確認できます。グラフは上下に分かれており、上のグラフでは時間の経過に伴う「成功したビルドと失敗したビルド (Success vs Fail)」または「ビルドタイプ (Build Type)」のどちらかを選択できます。デフォルトでは「成功したビルドと失敗したビルド」のグラフが選択されています。下のグラフでは時間の経過に伴う分散処理の割合の推移を確認できます (表示項目の詳細は「ビルド KPI サマリー」を参照)。特定の時点で表示されるデータは、最後に集計されたデータから指定した時間までに開始された全てのビルドに関するデータが表示されます。
- グラフには直近 2 週間は時間毎、 それ以前は日毎の集計データが表示されます。
- グラフの上部に表示項目と表示色の凡例が表示されます。
次の方法で表示を変更することができます。
- 表示 / 非表示 - 凡例のデータ項目をクリックするとグラフを表示 / 非表示できます。デフォルトではすべてが表示されているため、項目をクリックすると非表示になります。
- データ表示 - グラフの任意の場所にカーソルを合わせると、その地点の日時とデータがポップアップ表示されます。
注: 上下のグラフはリンクしています。上のグラフで任意の時点にカーソルを合わせると、下のグラフにもデータがポップアップ表示されます。
- ズーム - タイムライン上でドラッグした範囲を拡大表示して、すばやくデータの詳細を表示できます。タイムライン全体の表示に戻るには、グラフ右上の [Reset Zoom] ボタンをクリックします。
このセクションでは 2 つの基準 (「ビルドの所要時間」と「処理したビルド数」) において、上位順または下位順の Agent を棒グラフで確認できます。ビルド フィルターで設定したデータが適用されます。
それぞれのグラフの上部に表示項目と表示色の凡例が表示されます。
Agent 表示数フィルター
ドロップダウン リストにより、表示する Agent の数を選択できます (5、10、20 のいずれか)。また、パフォーマンスの上位順 (Top Initiators) または下位順 (Bottom Initiators) のどちらを表示するかを選択できます。
Time Spent Building
このセクションでは特定の Agent が開始したすべてのビルドの総所要時間を確認できます。上位順または下位順いずれかの Agent を表示できます。
グラフには Agent の名前と時間が表示されます。
次の方法で表示を変更することができます。
- 表示 / 非表示 - 凡例の Agent 名をクリックするとグラフを表示 / 非表示できます。デフォルトではすべての Agent が表示されているため、項目をクリックすると非表示になります。
- データ表示 - 各 Agent の棒グラフにカーソルを合わせると詳細データがポップアップで表示されます。Agent 名、Agent が Coordinator に接続されていた合計時間に対するビルド時間の割合、ビルドの総所要時間などが表示されます。
Number of Builds Executed
このセクションでは任意のイニシエーター Agent によって開始されたビルドの総数 (成功、失敗をともに含む) を確認できます。上位または下位の Agent を表示できます。グラフには Agent 名とビルド数が表示されます。
注: グラフはビルド数のみを表し、ビルド時間は除外されているため、ここに表示される Agent のリストおよび順序は前述の「Time Spent Building」のグラフと必ずしも同じとは限りません。
次の方法で表示を変更することができます。
- 表示 / 非表示 - 凡例の Fail または Success をクリックするとグラフを表示 / 非表示できます。デフォルトでは成功したビルドと失敗したビルドの両方が表示されます。
- データ表示 - 各 Agent の棒グラフにカーソルを合わせるとビルドの総数、成功 / 失敗したビルド数がポップアップで表示されます。
5 Longest Builds ディスプレイ
このセクションでは処理時間の長かった上位 5 つのビルドを確認できます。棒グラフ下の矢印アイコンをクリックするとビルドの詳細情報が表示されます。
項目は次の通りです。
項目 | 説明 |
---|---|
Agent Name | イニシエーター Agent の名前。 |
Status | ビルドのステータスは Success または Failed のいずれかになります。 |
Duration | ビルドの実行時間。 |
Distributed [%] | 合計時間に対するローカル Agent とリモート Agent で行われた処理の割合。この値はリモート Agent コアで実行したビルドの合計時間を、すべての Agent (ローカルとリモート) で実行したビルドの合計時間で割って算出されます。例えば、ローカル Agent と 9 台のリモート Agent でビルドを 1 時間行った場合、リモート Agent コアで行った処理の合計時間 (9 時間) をビルドの合計時間 (10 時間) で割って、分散処理されたタスクの割合 (90%) を算出します。 |
Avg. Additional Cores Needed | ビルドで利用可能だった (実際には利用できなかった) コアの平均数。IncrediBuildはビルド処理中に、追加で必要とされるコア数を毎秒記録します。よって、最終的に1 秒ごとに追加で必要なコア数が集計され、その合計をビルドの実行時間 (秒) で割った値が表示されます。たとえば、値が「0」の場合は開発環境にコアを追加してもビルドの効率は向上しません。この値が大きいほど、コアを追加することによるパフォーマンスの向上を見込めます。 |
Peak Additional Cores Needed | ビルド中に追加で必要とされたコアの最大数。 |
Time Saved | すべてのビルドをイニシエーター Agent のみで実行した場合と比較して、節約できた時間。値はすべてのリモート (ヘルパー) Agent のコア稼働時間*を集計して、イニシエーター Agent のコア数で割って算出します。リモート Agent は (I/O やネットワーク遅延の要因で) イニシエーター Agent よりも効率が悪いため 1/1.5 (0.6666...) 倍されます。例えば、イニシエーター Agent が 4 コア、リモート Agent が 12 コアで 1 時間ビルドを実行した場合、「12 コア稼働時間 ÷ 4 コア稼働時間 (イニシエーター Agent のコア数) = 3 時間」となります。これに 1/1.5 を掛けて、このビルドで短縮できた時間を計算します。この例では 2 時間となります。
|
Avoid Local | ビルドを開始したユーザーが設定したBoolean型の設定値。 |
Start Time | ビルドを開始した日時。 |
End Time | ビルドが完了した日時。 |
Avg Used Cores | ビルド実行中の任意の時点で使用されたコアの平均数。使用コア数は毎秒記録されます。よって、最終的に1 秒ごとに使用されたコア数が集計され、その合計をビルドの総実行時間 (秒) で割った値が表示されます。 |
Product | ビルドコマンドにプロダクト名(単数、複数)が設定されていた場合の、プロダクト名。 |
Command | ビルドの実行時の、コマンドライン全文。 |
5 Top Distributed Builds ディスプレイ
このセクションには、分散処理の割合が大きかった上位 5 つのビルドが表示されます。 (分散処理の割合については前述の「ビルド KPI サマリー」を参照)。棒グラフ下の矢印アイコンをクリックするとビルドの詳細情報が表示されます。表示項目の詳細については「5 Longest Builds ディスプレイ」の項目リストをご覧ください。.
ビルド グリッド
このセクションではビルドの詳細な情報を確認できます。ページ毎のリストに表示されるビルド数は最大 10 個です。各ビルドの詳細が右側の列に表示されます。セクションの一番下に表示されている矢印アイコンをクリックすると次のリストを表示できます。各項目をクリックして昇順 / 降順に並べ替えることができます。分析モード (Analysis Mode) ではより詳細な分析を行うことができます。
ビルド グリッド フィルター
フィルターを使って表示項目を絞り込むことができます (各項目の詳細は後述の「表示項目の詳細」を参照)。「分析モード」を開いてより詳細な分析を行うことができます。
表示項目の変更方法
- セクション上部の [COLUMNS] フィルターをクリックします。
- 表示項目がドロップダウン リストで表示されます。
- 表示したい項目のチェックボックスをオンにします。
- 選択済みの項目はチェックボックスをオフにすると非表示にできます (デフォルトではリストの上から 6 つの項目が選択済み)。
- 選択した項目がグリッドに表示されます。
注:
- Visual StudioのIDE、もしくは IncrediBuildの BuildConsole コマンドにて実行された Visual Studio ビルドのみがビルドタイプに表示されます。その他のビルドは「Unknown」として表示されます。
選択した項目が画面に入りきらない場合はグリッドの下にスクロール バーが表示されます。
分析モードの利用方法
- セクション上部の [Analysis Mode] をクリックします。
並び替え
グリッドに表示されているビルドは項目ごとに昇順 / 降順に並び替えることができます。
ビルドを並び替える
- 各項目の上向き矢印をクリックすると、降順 (上→下) に並び替えることができます。
- 各項目の下向き矢印をクリックすると、昇順 (下→上) に並び替えることができます。
注: 選択した列だけでなくグリッド全体のビルドの表示順序が変わります。
表示項目の詳細
アイテム | 説明 |
---|---|
Build Caption | 特定のビルド処理を表す文字列。ユーザーによる定義、または自動で生成することもできます。ビルドの実行で使用したソリューション名を入れることができます。タイトルの引数を指定せずにコマンドラインからビルドを実行した場合は、Build Caption は適用されないため、このフィールドは空のままです。 |
Status | ビルドのステータスは Success または Failed のいずれかになります。 |
Start Time | ビルドを開始した時間。 |
Duration | ビルドの所要時間。 |
Initiator | イニシエーター Agent の名前。 |
Distributed | 合計時間に対するローカル Agent とリモート Agent で行われた処理の割合。この値はリモート Agent コアで実行したビルドの合計時間を、すべての Agent (ローカルとリモート) で実行したビルドの合計時間で割って計算します。たとえば、ローカル Agent と 9 台のリモート Agent でビルドを 1 時間行った場合、リモート Agent コアで行った処理の合計時間 (9 時間) をビルドの合計時間 (10 時間) で割って、分散処理されたタスクの割合 (90%) を計算します。 |
Avg. Cores Used | ビルド処理中の任意の時点で使用されたコアの平均数。使用コア数は毎秒登録されます。1 秒ごとに使用されているコア数が集計され、その合計をビルドの処理時間 (秒) で割った値が表示されます。 |
Build Command | ビルドの実行に使われたコマンドライン。スペースの関係上グリッドには表示されませんが、ビルドの [Show] にカーソルを合わせるとビルド コマンドの全文がポップアップで表示されます。 |
Build Type | 実行したビルドのタイプ。ビルド タイプは次の通りです。
|
Estimated Time Saved | すべてのビルドをイニシエーター Agent のみで実行した場合に余分にかかる時間。値はすべてのリモート (ヘルパー) Agent のコア稼働時間*を集計して、イニシエーター Agent のコア数で割って算出します。リモート Agent は (I/O やネットワークの要因で) イニシエーター Agent よりも効率が悪いため 1/1.5 (0.6777...) 倍されます。たとえば、イニシエーター Agent が 4 コア、リモート Agent が 12 コアで 1 時間ビルドを実行した場合、「12 コア稼働時間 - 4 コア (イニシエーター Agent のコア数) = 3 時間」となります。これに 1/1.5 を掛けて、このビルドで短縮できた時間を計算します。この例では 2 時間となります。 *コア稼働時間は各コアの利用時間です。たとえば、4 コアのマシンを 1 時間稼働させて、すべてのコアを完全に利用した場合は 4 コア稼働時間と考えます。 |
End Time | ビルドが完了した時間。 |
Avg. Additional Cores Needed | ビルドで利用可能だった (実際には利用できなかった数) コアの平均数。システムにより 1 秒ごとに追加で必要なコア数が集計され、その合計をビルドの処理時間 (秒) で割った値が表示されます。たとえば、値が「0」の場合は開発環境にコアを追加してもビルドの効率は向上しません。この値が大きいほど、コアを追加することによるパフォーマンスの向上を見込めます。 |
Peak Cores Needed | ビルド中に追加で必要とされたコアの最大数。 |
Peak Cores Used | ビルド中に同時に使用されたコアの最大数。 |
Avoid Local | ビルドを開始したユーザーが設定するブール型のフィールド。 |
Product | ビルドコマンドに関連付けられた特定のプロダクト名 (該当する場合のみ)。 |