SData Collector はコード解析/テスト ツールからのレポートを受け取るコンポーネントです。Data Collector のストレージとアップロード制限の閾値は、組織の要件に合わせてユーザーが変更できます。
セクションの内容:
Data Collector レポート ストレージ閾値の設定
Data Collector がアナライザーからファイルを受信して処理する際、処理されたレポート ファイルは [DTP_HOME]/data/_DEFAULT_/dc/stored フォルダーに置かれます。このフォルダーには、YEAR/MONTH/DAY/XXX/YYY という書式のサブフォルダーがあります 。XXX と YYY は整数です。この値はファイル名に基づいて計算されます。
保存するフォルダーの最大サイズを指定すると、古いエントリが自動的に削除されます。
[DTP_HOME]/grs/config/ ディレクトリの DCConfig.xml ファイルを開き、次のエントリを探します。
<stored-folder> <max-size>20</max-size> <size-to-clean>5</size-to-clean> </stored-folder>
- <max-size> プロパティの値 (単位: GB) を許される最大のストレージ容量に変更します。デフォルトは 20 GB です。
- <size-to-clean> プロパティの値 (単位: GB) を最大容量に達した時に削除するデータの量に変更します。デフォルトは 5 GB です。
- ファイルを保存します。
DCConfig.xml ファイルにエントリがない場合、デフォルト値が使用されます。
レポート アップロードの最大サイズの設定
デフォルトでは、Data Collector が受け取ることができる XML レポートの最大サイズは 512MB です。以下の Data Collector JVM 引数を追加して、最大サイズを変更できます。
-Dcom.parasoft.sdm.api.rawstorage.datacollector.uploadMaxSize=512
Linux の場合、[DTP_HOME]/bin/variables ファイルにある以下の文字列を変更できます。
JAVA_DC_CONFIG_ARGS=" -Dcom.parasoft.sdm.api.rawstorage.datacollector.uploadMaxSize=512"
データの保存期間の設定
DTP が保管する単体テスト、カバレッジ、リソース カバレッジ、およびメトリクス データの量を設定できます。テスト、カバレッジ、およびメトリクスのデータはまとめて「テスト詳細」呼ばれます。なぜなら、これらのデータの集合がビルドについての重要なテスト情報を提供するからです。これらのプラクティスのデータはかなりの容量を消費するため、DTP はフィルター中の古いビルドに関連するデータを定期的に消去することで容量を確保します。
リソース カバレッジ
DTP はメソッド レベルおよびリソース レベルでカバレッジを収集します。メソッド レベルのカバレッジ データは、カバレッジ エクスプローラー でカバレッジを表示するために必要です。明示的な記述がない限り、本ドキュメントでの「カバレッジ」はメソッド レベルのカバレッジを指します。
リソース カバレッジ データは、リソース グループに関連するコードカバレッジ データを指します。リソース グループは、1 個以上の Ant ファイル パターンによって定義されたファイルあるいはフォルダーの集合です。リソース グループは、フィルターに関連付けることができる、プロジェクトのサブセットです。リソース グループによって、コードの特定部分のソフトウェア品質情報を参照できます。リソース グループの詳細については プロジェクトへのリソース グループの追加 参照してください。
デフォルトのデータ保存期間の設定
保存されるデータの量は、ギガバイトなどのハード的な制限ではなく、履歴ビルドの数に基づいて決まります。デフォルトでは、DTP は以下のデータを保存します。
- 単体テスト データ: 2 つの履歴ビルド
- カバレッジ データ: 2 つの履歴ビルド
- リソース カバレッジ データ: 10 の履歴ビルド
- メトリクス データ: 8 の履歴ビルド
設定
データの保存期間を設定するには、以下の操作を行います。
- Data Collector サービスを停止します。「DTP サービスの停止」を参照してください。
DTP_HOME/grs/config/DCConfig.xml 構成ファイルを開き、
<details-retention-builds-count>
を探します。<!-- <details-retention-builds-count> <tests>2</tests> <coverage>2</coverage> <resource-coverage>10</resource-coverage> <metrics>8</metrics> </details-retention-builds-count>-->
設定のコメントを外し、プラクティスごとに保存するデータ量を指定します。値はビルドの数を表します。たとえば 1 を指定することは、そのプラクティスについてビルド 1 つ分のデータを保存することを意味します。
<details-retention-builds-count> <tests>3</tests> <coverage>4</coverage> <resource-coverage>12</resource-coverage> <metrics>9</metrics> </details-retention-builds-count>
テストの失敗の閾値の変更
設定をコメントアウトしているか何も値を指定していない場合、デフォルト値が使用されます。
値を 0 に設定した場合、保存するビルドの数は制限されません。無制限の数のビルドをデータベースに保存する場合は注意してください。大量のビルド データを保持すると、パフォーマンスが低下します。
- ファイルを保存して Data Collector を再起動します。
テストの失敗の閾値の変更
デフォルトでは、Data Collector は 5000 件を超えるテストの失敗があるレポートを拒否します。以下の Data Collector JVM 引数を追加して上限を変更できます。
-Dcom.parasoft.sdm.rawstorage.failures.limit=5000
Linux の場合、[DTP_HOME]/bin/variables ファイルにある以下の文字列を変更できます。
JAVA_DC_CONFIG_ARGS=" -Dcom.parasoft.sdm.rawstorage.failures.limit=5000"
負の値を指定した場合、テストの失敗の数に関係なく Data Collector はレポートを拒否しません。
DTP Enterprise Pack アーティファクトのためのカバレッジ データ処理の制御
デフォルトでは、Data Collector は Change Based Testing (CBT) および Risky Code Changes (RCC) DTP Enterprise Pack アーティファクトのためのカバレッジ データを処理しません。その理由は、アーティファクトの実行に関連する潜在的なパフォーマンスの影響を削減するためです。これらのアーティファクトを使用したい場合、DTP_HOME/conf/ ディレクトリにある ReducedCoverageConfig.xml 構成ファイルでカバレッジ データ処理を有効にする必要があります。このファイルで、Data Collector が処理するカバレッジ データを指定できます。
カバレッジ レポートのサイズと処理時間への影響
カバレッジ レポート ファイルのサイズが 1GB を超えていて、1 つのビルドにつき複数のレポートを送信する場合、Data Collector の処理時間が 1 GB につきさらに 5 分かかることがあります。
- ReducedCoverageConfig.xml 構成ファイルを開き、<images> 要素の type パラメーターの値を accept または reject に設定します。
<images type="accept">
このパラメーターを accept に設定すると、Data Collector はリストにあるカバレッジ イメージのカバレッジ データ のみ を受け取ります。reject に設定すると、リストにあるカバレッジ イメージを除く すべての カバレッジ データを拒否します。 <images> 要素の <image> 要素にカバレッジ イメージを追加して、accept または reject を指定します。
<images type="accept"> <image>Example Coverage</image> <image>Test Coverage</image> </images>
- ファイルを保存します。
accept/reject の他の設定例については、ReducedCoverageConfig.xml を参照してください。