TeamCity 2019.2ヘルプ

サーバーの状態

サーバーの状態レポートには、パフォーマンスに影響する、または潜在的に影響を与える可能性のある構成の課題に関するサーバーインスペクションの結果が含まれています。このような課題、いわゆるサーバーヘルス項目は、管理エリアのサーバーの状態ページでTeamCityによってまとめて報告されます。

レポートを表示するには、少なくともプロジェクト管理者の権限が必要です。

範囲と重大度

このレポートを使用すると、分析範囲を定義できます。グローバル構成を分析するか、プロジェクト関連のアイテムに関するレポートを選択できます。使用できる範囲は、付与されたプロジェクトを見る許可のレベルによって異なります。レポートはアーカイブされたプロジェクトでは使用できないことに注意してください。

また、サーバー全体の分析では、プロジェクト全体または個々のプロジェクトでのシステムの構成に対する課題の影響に応じて、重大度の評価を採用しています。

可視性オプション

デフォルトでは、グローバル構成に関連する警告およびエラーレベルの結果は、TeamCityの各ページの上部だけでなくレポートページにも表示されます。

これらに加えて、一部のアイテムがインプレースで表示されます。課題の原因となっているオブジェクトに応じて、サーバーのヘルスアイテムがビルド構成、テンプレート、またはVCSルート設定ページで報告されます。

TeamCityページにはアクティブなアイテムのみが表示されます。表示からアイテムを削除するには、レポートページのアイテムの横にある非表示オプションを使用します。グローバルアイテムの場合、このオプションはすべてのサーバーヘルスメッセージで使用できます。

非表示のアイテムはTeamCityページから削除され、サーバーヘルスページのアクティブなアイテムに表示されます。説明はグレー表示されます。

表示するアイテムを返すには、表示オプションを使用します。

可視性の変更は、管理エリアの監査ページにリストされます。

課題カテゴリ

管理者がTeamCityの全体的なステータスを簡単に監視できるように、ヘルスアイテムは幅広いサーバー機能をカバーしています。

グローバル構成アイテム

TeamCityは、新しいTeamCityバージョンの可用性に関する通知とアップグレードのプロンプトを表示します。ライセンスのいずれかがこの新しいバージョンと互換性がない場合、警告が表示されます。通知はシステム管理者のみに表示され、「一部のライセンスは互換性がありません」というメッセージのリンクを使用して、ライセンスページにすばやく移動できます。このページでは、互換性のないライセンスにはすべて警告アイコンが表示されます。

エージェント構成

TeamCityは、エージェントが推奨Java 8を実行していない場合に通知を表示します。このレポートには、バージョン1.8より前のJavaで実行されているすべてのエージェントが表示されます。

WebSocket接続の課題

WebSocketプロトコルは、イベントのWeb UIを更新し、ビルドの更新と統計カウンターを実行するために使用されます。

WebSocket接続の動作を妨げる問題が発生した場合、警告が表示されます。TeamCityは、レガシー更新モード(バージョン9.0より前のTeamCityで使用されていた通常のHTTPリクエストポーリング)に自動的に切り替わり、このモードでTeamCityを引き続き使用できます。

ただし、次の調整を行って、Web UIの更新を高速化し、不要なネットワークトラフィックと遅延を削減することをお勧めします。

  • プロキシー・サーバー構成

  • BIOコネクタの調整

プロキシー・サーバー構成

TeamCityサーバーの前でリバースプロキシを使用する場合、WebSocketプロトコルをサポートするように構成する必要があります。

WebSocket接続をサポートしないブラウザーで使用されるすべてのURLは、対応する正常性レポートにリストされます。

BIOコネクタの調整

TomcatがBIOコネクタ(英語)を使用するように構成されている場合、WebSocketプロトコルは自動的に無効になります(英語)。Tomcatコネクタの設定を変更して、NIOコネクタを使用することをお勧めします。

クリティカル・エラー

このカテゴリには、次のエラーが表示されます。

  • プロジェクト構成ファイルのエラー-サーバーがディスクから構成ファイルをロードしている間に、何らかの不整合または破損した構成を検出した場合に発生する

  • ディスク容量ウォッチャーによって発生したエラー

  • TeamCityサーバーメモリー・モニターからの警告

データベース関連の問題

サーバーが現在内部データベースを使用している場合、TeamCityは警告を出します: ストレージエンジンとしてスタンドアロンデータベースを推奨

TeamCityは外部データベースとしてSybaseをサポートしていませんとして、Sybaseを使用している場合、警告メッセージが表示されます。

ビルド構成アイテム

依存関係の問題

TeamCityは、欠落しているビルド構成に依存するビルド構成(たとえば、依存関係が構成された後に削除されたビルド構成)を検出します。

大きなビルドログを使用した構成

大きいビルドログ(デフォルトでは200 MB以上)は、解析するには重すぎ、ブラウザで表示するのが困難であるため、サーバーのパフォーマンスを低下させる可能性があります。

このインスペクションが一部のビルド構成で頻繁に失敗する場合は、ビルドスクリプトを調整して出力を少なくすることができます。

非効率的なアーティファクトの公開

TeamCityは、多くの小さなアーティファクトファイルを公開するビルドを検出し、単一の .zip アーカイブとして公開することを提案します。

VCSルート関連の問題

未使用のVCSルート

TeamCityは、プロジェクトで定義されたVCSルートを表示し、未使用のルートを削除することを提案します。

同様のVCSルート

TeamCityは、設定の一部(ユーザー名、パスワードなど)が異なっていても、主要設定(URL、ブランチ設定など)が同じ場合、VCSルートを同一と見なします。

レポートには同一のルートが表示され、マージするかどうかはユーザーに任されます。

同様のVCSルートの使用箇所 (別名インスタンス)

VCSルート設定の値を定義するか、異なるレベルで定義されたさまざまなパラメーターへのパラメーター参照を使用できます。

参照されるVCSルートパラメータが定義された値と同じ値に解決されると、そのような場合は同一のVCSルート使用として報告されます。

一般的な推奨事項は、ルート設定にパラメーター参照を使用して、VCSルートの量を最適化することです。

接続されていないVCSルートのトリガールール

VCSトリガーまたはスケジュールトリガーのルールが、ビルド構成に関連付けられていないVCSルートを参照している場合、TeamCityは警告を表示します。

冗長トリガー

このレポートは、ビルドトリガーが冗長な場合を示します: 例:

  • ABの2つのビルド構成があります

  • AスナップショットはBに依存

  • 両方ともVCSトリガー、スナップショット依存関係の変更をトリガーオプションを有効にしたAがあります。この場合、BのVCSトリガーは冗長であり、Aのビルドが数回キューに入れられます。

複数の同一のビルドトリガー

警告は、同じタイプのパラメーター値の同じセットを持つ2つ以上の有効なトリガーが存在する場合に表示されます。無効化されたトリガーは考慮されません。

有効な静寂期間が指定よりも大きい

ビルド構成のVCSトリガーに待機期間がある場合、TeamCityは、ビルドをトリガーする前に、最後に検出された変更後、指定された時間待機します。この間、このビルド構成に影響するすべてのVCSルートの変更がチェックされます。他のVCSルートが静止期間よりも大きい変更間隔のチェックを持っている場合、有効な静止期間は、関連するVCSルートの変更間隔の最大チェックに等しくなります(依存関係のVCSルートである可能性があります)。

考えられる修正方法は次のいずれかです。

  • コミットフックを使用して、変更操作のチェックをトリガーする

  • 関連するVCSルートの変更間隔のチェックよりも大きくなるように、VCSトリガーの待機期間を長くする

  • 問題のあるVCSルートの変更間隔のチェックを減らす

VCSチェックアウト

頻繁なクリーンチェックアウト

レポートのこのセクションには、次の2つの理由により発生する可能性のある頻繁なクリーンチェックアウトが表示されます。

カスタムチェックアウトディレクトリー

異なるVCS設定を持つが同じカスタムチェックアウトディレクトリーを持つ構成を構築すると、頻繁にクリーンチェックアウトが行われ、パフォーマンスが低下し、ソースの増分更新の一貫性が妨げられる可能性があります。

ビルドファイルクリーナー(Swabra)の設定

いくつかのビルド構成でビルドファイルをきれいにする (Swabra)ビルド機能を有効にすると、余分なクリーンチェックアウトが発生する場合があります。これは、これらの構成からのビルドが同じエージェントで交互に実行され、同じバージョン管理設定または同じカスタムチェックアウトディレクトリーが指定されている場合に発生する可能性があります。

頻繁なクリーンチェックアウト (Swabraケース)サーバーヘルスレポートには、Swabraの設定ごとにグループ化されたこのような誤った設定が表示されます。

最適な推奨チェックアウト

エージェント側のチェックアウトに切り替えることを推奨する大規模なサーバー側パッチのレポートが表示されます。

エージェントのデフォルトの自動チェックアウト

デフォルトのエージェント側のチェックアウトが不可能な場合、TeamCityは対応するヘルスレポートアイテムを表示し、サーバー側のチェックアウトを使用します。

統合関連アイテム

  • プロジェクトまたはビルド構成にセキュリティで保護されたパラメーターがあり、GitHubプルリクエストをビルドするように構成されている場合、このレポートは警告を発生させます。

  • VCSルートがGitHubまたはBitbucketを指している場合、対応する課題トラッカーを設定するための提案が表示されます。

エージェントのヘルス

一部のエージェントはアップグレードできません

このレポートは、アップグレードに失敗したエージェントを見つけるのに役立ちます。ビルドエージェントログは、課題の原因を特定できます。

クラウドエージェント

ユーザーがプロファイルからイメージを削除すると、TeamCityによって既に開始されたインスタンスが自動的に停止されないという警告が表示されます。

未使用のビルドエージェント

レポートは、3日以上使用されていないエージェントについて表示されます。

  • 環境内に3つ以上のエージェントがある

  • エージェントが3日以上登録されている

  • これらの3日間にビルドがサーバーで実行された場合

プロキシサーバーの構成が正しくありません

このレポートには、TeamCity Webインターフェースへのアクセスに使用されるプロキシサーバーの検出された設定ミスが表示されます。

TeamCityでプロキシサーバーをセットアップする方法についての推奨事項を参照してください。

推奨設定

TeamCityは、ビルド構成の現在の設定を分析し、VCSトリガーの追加、ビルドステップなどの追加オプションを提案します。サーバーヘルスレポートに加えて、特定のビルド構成の提案が構成設定ページに表示されます。

拡張性

TeamCityが提供するデフォルトのサーバー正常性レポートは、必要なアイテムが多すぎるか、またはすべてではない場合があります。インフラストラクチャ、構成、パフォーマンスの側面などに応じて。分析する必要がある場合は、カスタムサーバーヘルスレポートが必要になる場合があります。TeamCityを使用すると、特定のアイテムについてレポートするプラグイン(英語)を作成できます。