カスタムフィルタセットの作成
「カスタムプロファイル」の CPU 使用率のプロファイルを実行する場合や「パフォーマンスを解析」プロファイルタスクを実行する場合に、フィルタを適用できます。フィルタを適用すると、計測するクラスを制限できるため、クラスの組み合わせを含めたり、除外したりすることができます。計測するクラスを制限することで、プロファイルのオーバーヘッドが軽減されます。
タスクにフィルタを適用するには、まず、指定するフィルタを含むフィルタセットを作成します。フィルタセットを作成する場合、セットで使用するフィルタを指定します。さらに、次のいずれかの種類のフィルタセットを設定します。
- 除く。 選択すると、選択したフィルタの条件に一致するクラスが除外され、計測されません。これらのクラスのプロファイル結果は収集結果に表示されません。
- 含む。 選択すると、選択したフィルタの条件に一致するクラスのみが計測に含まれます。これらのクラスについてのみプロファイル結果が収集されます。
「フィルタセットのカスタマイズ」ダイアログで、フィルタセットを作成および編集します。「定義済みフィルタセット」区画に、既存のフィルタセットが表示されます。既存のフィルタセットを変更するには、「定義済みフィルタセット」リストのフィルタセットを選択し、「グローバルフィルタ」リストのフィルタをアクティブ化または非アクティブ化します。Profiler には「Java コアクラスを除外」フィルタセットがあらかじめ含まれています。
「フィルタセットのカスタマイズ」ダイアログに、カスタムフィルタセットに追加できるグローバルフィルタが表示されます。「グローバルフィルタ」リストにフィルタを追加または削除するには、「フィルタセットのカスタマイズ」ダイアログの「グローバルフィルタを編集」ボタンをクリックします。「グローバルフィルタ」リストのフィルタをダブルクリックして、「グローバルフィルタを編集」ダイアログを開きます。
新しいカスタムフィルタセットを作成する
- 次のいずれかの手順を実行して、「フィルタセットのカスタマイズ」ダイアログを開きます。
- 「プロファイルタスクの選択」ダイアログの「パフォーマンスを解析」を選択し、「フィルタをカスタマイズ」をクリックします。
- 「プロファイルタスクの選択」ダイアログの「カスタムプロファイル」を選択し、「CPU プロファイル」を選択して、「オプション」セクションの「基本」タブの「カスタマイズ」をクリックします。
- 「追加」をクリックし、新しいフィルタセットの名前を入力します。フィルタセット名は一意である必要があります。
- 「含む」または「除く」の「フィルタセットタイプ」を指定します。
- 「グローバルフィルタ」リストから、フィルタセットに含めるグローバルフィルタのチェックボックスを選択して、アクティブ化します。値の上にカーソルを置き、そのフィルタに含まれるすべてのパターンを確認します。
- 「了解」をクリックし、新しいカスタムフィルタセットを保存します。
フィルタセットを作成したら、次の手順を実行して、適用できます。
- 「プロファイルタスクの選択」ダイアログの「パフォーマンスを解析」を選択し、「フィルタ」ドロップダウンリストからフィルタセットを選択します。
- 「プロファイルタスクの選択」ダイアログの「カスタムプロファイルを実行」を選択し、既存のカスタム CPU プロファイルタスクを選択するか、新しい CPU プロファイルタスクを作成します。「オプション」セクションの「基本」タブをクリックし、「計測フィルタ」ドロップダウンリストからフィルタセットを選択します。
フィルタセットの使用方法
フィルタセットを使用すると、プロファイルのオーバーヘッドを軽減し、結果を絞り込むことができます。たとえば、多数のライブラリから構成されているが、問題のある箇所が正確にわからないアプリケーションをプロファイルする場合は、たいてい「除く」フィルタセットを使用して、コア Java クラスを除外します (問題になる可能性が少ない)。これによって、プロファイルのオーバーヘッドを大幅に軽減しながらも、すべてのアプリケーションライブラリの結果を確認できます。
問題が特定のライブラリやクラスにあることが確実である場合は、「含む」フィルタセットを使用し、それらのクラスに一致するフィルタセットを使用できます。プロファイルのオーバーヘッドが最小になり、関心のあるクラスの結果のみが表示されます。
グローバルフィルタ
「フィルタセットのカスタマイズ」ダイアログに、定義済みのフィルタのリストが表示され、フィルタセットの作成時に使用できます。リストの各フィルタは、一般に 1 つのアプリケーションに関連するパターンのグループを表します。たとえば、org.netbeans はパターンの 1 つです。フィルタには複数のパターンを含めることができます。パターンは、コンマまたはスペース、あるいはその両方で区切ることができます。
フィルタは「前方一致検索」方式で適用されます。たとえば、フィルタに org.netbeans が含まれている場合、パッケージ org.netbeans.modules.classfile.Annotation 内のクラスはこのフィルタに一致することになります。
注: パターンに * を使用してもフィルタ動作に影響を与えません。
グローバルフィルタを変更するか、作成するには、「フィルタセットのカスタマイズ」の「グローバルフィルタを編集」をクリックします。「グローバルフィルタを編集」ダイアログで、次の操作を実行できます。
- 新しいフィルタを追加する。 「新規」をクリックし、リストに新しい行を作成し、リストのフィールドに直接、新しい名前と値を入力します。フィルタ名は一意である必要があります。
- フィルタを編集する。 リストからフィルタを選択し、「編集」をクリックします。リストのフィールドに直接入力して、名前または値を編集します。
- フィルタを削除する。 リストからフィルタを選択し、「削除」をクリックします。
- フィルタの順番を変更する。 リストからフィルタを選択し、「上へ移動」ボタンまたは「下へ移動」ボタンを使用して、リストの順番を変更します。
関連項目