TeamCity の監視と診断
TeamCity は、詳細なサーバーログ、ヘルスレポート、リソースモニターなど、サーバーの監視とトラブルシューティングを行うためのさまざまな診断ツールとインジケーターを提供します。 これらのツールを使用すると、問題を簡単に特定して調査し、必要に応じてサーバー上の 問題を報告できます。
この記事では、 管理 | 診断 で使用可能な診断ツールについて説明します。 このセクションのネストされた記事でも詳細を確認できます。
トラブルシューティング
このタブには、TeamCity サーバーのパフォーマンスの問題を検出して対処するのに役立つ複数のインジケーターがあります。
CPU & メモリ使用量
このセクションには、 TeamCity Memory Monitor が提供するデータが表示されます。このモニターは使用可能なメモリを定期的にチェックし、 メモリ消費量 が高くなりすぎると警告を送信します。 TeamCity サーバーの メモリ設定の構成に関する情報も参照してください。
オペレーティングシステムと Java の設定によって、表示されるプロパティのリストは異なる場合があります。
CPU 使用箇所
TeamCity プロセスの CPU 使用箇所 は、一定期間で平均したメインの TeamCity プロセスが使用する CPU 時間を示します。 CPU リソースを消費する他のプロセス(データベース、Maven サーバー、VCS)は含まれません。
ガベージコレクション は、サーバーメモリのクリーニングに費やされた時間の平均を示します。 長期間にわたる高い数値は、通常、サーバーメモリが不十分であることを示します。
システム負荷 は、一定期間で平均化された CPU キュー長に基づく CPU 負荷情報を表示します。つまり、使用可能なプロセッサにキュー登録された実行可能コードエンティティの数と、使用可能なプロセッサ上で実行されているエンティティの数の合計を一定期間 (1 分) で平均したものです。
全体の CPU 使用箇所 は、システム全体の最近の CPU 使用率を \[0.0,1.0\] 間隔の値で示します。 値 0.0 は、最近の期間中にすべての CPU がアイドル状態であったことを意味し、値 1.0 は、最近の期間中にすべての CPU が 100% の時間アクティブに実行されていたことを意味します。
メモリ使用箇所
合計ヒープ は、収集される予定の一時データを含むすべてのデータを保存するために TeamCity が使用するメモリの総量を表示します。 java に関してすべてのヒープメモリプール(若い世代と古い世代)を表します。 ガベージコレクションは迅速かつ頻繁に実行されます。
データ は、永続データを保存するために TeamCity が使用するメモリ量を示します。 java の観点からのみ古い世代を表します。 ガベージコレクションは低速で、頻繁に実行されません。
トラブルシューティング
デバッグログ
これにより、TeamCity サーバー内部の ログ設定を変更できます。
ハングとスレッドダンプ
サーバースレッドダンプ はブラウザーで表示するか、ファイルに保存できます。
メモリの問題が発生した場合、このセクションではメモリのスナップショットをダンプするオプションを提供します。
サーバー再起動
このセクションでは、UI からサーバーを再起動できます。
Java 構成
このセクションでは、 サーバーにインストールされているJava と構成された JVM オプションについて説明します。
VCS ステータス
このタブには、変更ステータスや期間のチェックなど、監視対象の VCS ルートに関する情報が表示されます。
変更期間を確認することで、利用可能な VCS ルートをフィルタリングできます。
メトリクス
TeamCity は、TeamCity サーバーの健全性の監視に使用できるサーバー負荷メトリクスを提供します。
メトリクス タブには、サポートされているすべてのメトリクス、それらの タグ パラメーター、現在の値が表示されます。
<TeamCity_server_URL>/app/metrics エンドポイントは、メトリクスを プロメテウス(英語)形式で提供し、Prometheus サポートのある監視ソリューション(たとえば、 グラファナ(英語) )にインポートする準備ができています。 サーバーメトリクスは「使用統計を表示する 」権限を持つユーザーのみが取得できることに注意してください。
TeamCity 2023.05 以降、メトリクスの 実験的 タグは報告されません。 Prometheus 形式のメトリクスの ?experimental=true URL パラメーターは引き続き機能し、一部のメトリクスは実験段階のままです。 実験的なメトリクスが有用であると判断し、サポートされているメトリクスに段階的に適用したい場合は、 サポートチャネルを通じてお知らせください。
サーバーログ
このタブでは、利用可能な TeamCity サーバーログ 、および保存済みのスレッドダンプとメモリダンプを表示およびダウンロードできます。
内部プロパティ
このタブには、TeamCity の サーバー内部プロパティが表示され、変更できます。
ログプリセット
TeamCity は内部サーバーアクティビティの ログ記録に log4j ライブラリを使用します。 このセクションでは、使用可能なプリセットを表示およびダウンロードしたり、新しいプリセットをアップロードして 診断 | トラブルシューティング | デバッグログ で有効にすることができます。
ログ設定を 手動で変更することも可能です。
キャッシング複数形。個々のキャッシュ領域の意なら「キャッシング」だが awkward. Justキャッシング.
このタブには、 <TeamCity データディレクトリ>/system/caches に保存されている TeamCity プロセスのキャッシングが表示されます。 一部のキャッシュのリセットは、クリーンアップ中にサーバーによって自動的に実行されますが、リセットリンクを使用して手動でキャッシュをクリアする必要がある場合もあります。
VCS コンテンツキャッシング— TeamCity は、VCS サーバーとの通信を最適化するために、ソース用の vcsContentCache キャッシュを維持します。 キャッシュは、クリーンアップ時にリセットされます。 ソースの更新に関する問題を解決するには、キャッシュを手動でリセットする必要がある場合があります。検索— ビルドログによる検索を有効にする場合は、このキャッシュをリセットする必要があります。Git— TeamCity が使用するリモート Git リポジトリのベアクローンが含まれます。ビルドのメタデータ— TeamCity NuGet フィードを再インデックスするには、このキャッシュをリセットする必要があります。
バージョン対応設定キャッシュ
バージョン管理システムで TeamCity プロジェクトの設定を保持する場合、次のキャッシュが使用されます。 詳細については、この記事を参照してください: バージョン管理でのプロジェクト設定の保存
DSL 依存関係 Mavenには、 Kotlin DSL 構成の pom.xml ファイルでユーザーが指定したダウンロード済みの Maven 依存関係が含まれます。生成されたバージョン管理設定は、過剰な DSL の実行を防ぐために、生成された構成キャッシュを保存します。Kotlin DSL データは、 Kotlin DSL 実行の構成と結果に関連する内部データを保存します。 TeamCity はこのキャッシュを使用して、UI パッチのサポートなどの Kotlin DSL 構成を維持します。プラグイン DSL キャッシングには、ソース、コンパイル済み JAR、ドキュメントなど、プラグインからの Kotlin DSL 拡張機能が含まれています。 さらに、このキャッシュには、Maven 依存関係を提供する Maven リポジトリが格納されます。バージョン管理された設定には、ダウンロードされた バージョン管理された設定 (.teamcityフォルダーの内容) が含まれています。バージョン管理設定のインクリメンタルモードは、 Kotlin DSL のインクリメンタルコンパイルをサポートします。
検索
検索に関連する TeamCity データインデックスの情報を表示します。
データディレクトリの参照
このタブには、 TeamCity データディレクトリ内のファイルが表示され、新しいファイルをアップロードできます。