Data Collector はコード解析/テスト ツールからのレポートを受け取るコンポーネントです。Data Collector のストレージとアップロード制限の閾値は、組織の要件に合わせてユーザーが変更できます。
このセクションの内容:
Data Collector レポート ストレージ閾値の設定
Data Collector がアナライザーからファイルを受信して処理する際、処理されたレポート ファイルは <DTP_DATA_DIR>/data/_DEFAULT_/dc/stored フォルダーに置かれます。このフォルダーには、YEAR/MONTH/DAY/XXX/YYY という書式のサブフォルダーがあります 。XXX と YYY は整数です。この値はファイル名に基づいて計算されます。
保存するフォルダーの最大サイズを指定すると、古いエントリが自動的に削除されます。
<DTP_DATA_DIR>/grs/config/ ディレクトリの DCConfig.xml ファイルを開き、次のエントリを探します。
<stored-folder> <max-size>20</max-size> <size-to-clean>5</size-to-clean> </stored-folder>
- <max-size> プロパティの値 (単位: GB) を許される最大のストレージ容量に変更します。デフォルトは 50 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_DATA_DIR>/bin/variables ファイルにある以下の文字列を変更できます。
JAVA_DC_CONFIG_ARGS=" -Dcom.parasoft.sdm.api.rawstorage.datacollector.uploadMaxSize=512"
データの保存期間の設定
DTP が保管する単体テスト、カバレッジ、リソース カバレッジ、およびメトリクス データの量を設定できます。テスト、カバレッジ、およびメトリクスのデータはまとめて「テスト詳細」呼ばれます。なぜなら、これらのデータの集合がビルドについての重要なテスト情報を提供するからです。これらのプラクティスのデータはかなりの容量を消費するため、DTP はフィルター中の古いビルドに関連するデータを定期的に消去することで容量を確保します。
リソース カバレッジ
DTP はメソッド レベルおよびリソース レベルでカバレッジを収集します。メソッド レベルのカバレッジ データは、カバレッジ エクスプローラー でカバレッジを表示するために必要です。明示的な記述がない限り、本ドキュメントでの「カバレッジ」はメソッド レベルのカバレッジを指します。
リソース カバレッジ データは、リソース グループに関連するコードカバレッジ データを指します。リソース グループは、1 個以上の Ant ファイル パターンによって定義されたファイルあるいはフォルダーの集合です。リソース グループは、フィルターに関連付けることができる、プロジェクトのサブセットです。リソース グループによって、コードの特定部分のソフトウェア品質情報を参照できます。リソース グループの詳細については「プロジェクトへのリソース グループの追加」を参照してください。
デフォルトのデータ保存期間の設定
保存されるデータの量は、ギガバイトなどのハード的な制限ではなく、履歴ビルドの数に基づいて決まります。デフォルトでは、DTP は以下のデータを保存します。
- 単体テスト データ: 2 つの履歴ビルド
- カバレッジ データ: 2 つの履歴ビルド
- リソース カバレッジ データ: 10 の履歴ビルド
- メトリクス データ: 10 の履歴ビルド
設定
データの保存期間を設定するには、以下の操作を行います。
- Data Collector サービスを停止します。「DTP サービスの停止」を参照してください。
<DTP_DATA_DIR>/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>
- ファイルを保存して Data Collector および DTP Server を再起動します。
テストの失敗の閾値の変更
デフォルトでは、Data Collector は 5000 件を超えるテストの失敗があるレポートを拒否します。以下の Data Collector JVM 引数を追加して上限を変更できます。
-Dcom.parasoft.sdm.rawstorage.failures.limit=5000
Linux の場合、<DTP_DATA_DIR>/bin/variables ファイルにある以下の文字列を変更できます。
JAVA_DC_CONFIG_ARGS=" -Dcom.parasoft.sdm.rawstorage.failures.limit=5000"
負の値を指定した場合、テストの失敗の数に関係なく Data Collector はレポートを拒否しません。
セキュリティ層プロトコルと暗号化スイートの無効化
DTP では SSL はデフォルトで有効化されています。ただし、Parasoft ツールに関係するセキュリティ関連の問題がある場合、SSL プロトコルおよび/または暗号化スイートを無効化できます。
- Data Collector サービスを停止します。「DTP サービスの停止」を参照してください。
<DTP_DATA_DIR>/conf/DCServerConfig.xml 構成ファイルを開き、適切な要素で除外するプロトコルおよび/または暗号化スイートを指定します:
<!-- comma separated list of protocols to exclude By default, TLSv1, TLSv1.1 are excluded --> <excluded-ssl-protocols>TLSv1,TLSv1.1</excluded-ssl-protocols> <!-- comma separated list of cipher suites to exclude --> <excluded-cipher-suites></excluded-cipher-suites>
- Data Collector を再起動します。
リバース プロキシの設定
リバース プロキシは、高可用性を実現したりネットワーク セキュリティを強化するために使用されることがあります。組織でリバース プロキシを使用している場合は、リバース プロキシ環境で動作するように Data Collector を構成できます。Data Collector 構成ファイルの構成に加えて、リバース プロキシ サーバーも構成し、リクエストを正しいポートに転送する必要があります。詳細については「Reverse Proxy Support」を参照してください。
- <DTP_DATA_DIR>/conf ディレクトリにある DCServerConfig.xml 構成ファイルを開きます。
- 次の要素の値を指定します。
<dc-reverse-proxy-protocol>
: ユーザーが接続するリバース プロキシ サーバーのプロトコル (HTTP または HTTPS)。<dc-reverse-proxy-port>
: ユーザーが接続するリバース プロキシ サーバーのポート。<dc-reverse-proxy-host>
: ユーザーが接続するリバース プロキシ サーバーのホスト名。<dc-reverse-proxy-path>
: (オプション) リバース プロキシ サーバーが Data Collector を介して DTP にデータをアップロードするために使用できるパスを指定します。Data Collector、Report Center、およびその他の DTP アプリケーションがシングル コンテキスト パスを使用するように構成されている場合に、それらへのアクセスを提供します。パスを設定する必要があるのは、リバース プロキシがシングル コンテキスト パスをサポートするように構成されている場合だけです。パスは/
で開始する必要があります。
- ファイルを保存して Data Collector を再起動します (「DTP サービスの開始」を参照)。
設定の例
次の例では、Parasoft レポートが https://reverse-proxy123.example.com:7777/dtp/dc
に送られ、http://your-dtp-server.example.com:8082
に転送されます。
<root-config> <!-- fields that always need to be are not part of the reverse proxy setup --> <dc-server-protocol>http</dc-server-protocol> <dc-server-port>8082</dc-server-port> <!-- reverse proxy setup --> <dc-reverse-proxy-protocol>https</dc-reverse-proxy-protocol> <dc-reverse-proxy-port>7777</dc-reverse-proxy-port> <dc-reverse-proxy-host>reverse-proxy123.example.com</dc-reverse-proxy-host> <dc-reverse-proxy-path>/dtp/dc</dc-reverse-proxy-path> ... other fields ... </root-config>
これらのフィールドを設定していない場合、レポートを Data Collector にアップロードするときに Parasoft ツール (Jtest など) が失敗します。
また、大きなリクエスト ペイロードを処理するようにリバース プロキシを構成する必要もあります。その理由は、サイズがメガバイトのレポートを Parasoft ツールが生成することがあるからです。詳細については、リバース プロキシ サーバーのドキュメントを参照してください。