APM ChangeDetector のインストールおよび設定

構成ウィザードを使用して、または手動で XML 構成ファイルを編集して ChangeDetector データソースをインストールして設定できます。
apmdevops102jp
構成ウィザードを使用して、または手動で XML 構成ファイルを編集して ChangeDetector データソースをインストールして設定できます。
注:
ChangeDetector のインストールの概要については、「ChangeDetector マインド マップ」を参照してください。
3
2
CA APM ChangeDetector のインストールおよび有効化
CA APM ChangeDetector は、エージェントのインストール中に、スタンドアロン エージェント インストーラまたはサイレント モード インストールを使用してインストールされます。デフォルトでは、ChangeDetector は無効化されています。ChangeDetector は、エージェントおよび Enterprise Manager (コレクタ)で有効にされる必要があります。エージェントとコレクタで ChangeDetector を有効にし、オプションを設定します。
以下の手順に従います。
  1. エージェントをインストールし、エージェントで ChangeDetector を有効にします。ChangeDetector は、インストール プロセス中に、または後からいつでも有効にできます。具体的な手順については、「.NET エージェントのインストール」および「ターゲット コンピュータへのエージェントのインストール」(Java エージェントの場合)を参照してください。
    注:
    ChangeDetector を使用するよう設定された .NET エージェントを再起動すると、スタック エラー メッセージが表示される場合があります。このエラーは、古い change_detector フォルダが削除されなかったことが原因で発生します。この問題を回避するには、.NET エージェントを再起動する前に change_detector フォルダを削除してください。
  2. CA APM ChangeDetector を Enterprise Manager で有効にします。
    IntroscopeEnterpriseManager.properties
    ファイル(
    <EM_Home>/config
    ディレクトリ)を開き、
    introscope.changeDetector.disable
    プロパティを
    false
    に設定して Enterprise Manager を再起動します
    例:
    introscope.changeDetector.disable=false
  3. CA APM ChangeDetector を設定します。ChangeDetector を設定する前に、「CA APM ChangeDetector を設定する前に」を参照して、さまざまな構成オプションについて理解しておいてください。
    注:
    CA APM ChangeDetector は、変更されたデータと共にファイル所有者のデータをレポートするネイティブ ライブラリ(Windows オペレーティング システム用の cdnativefile.dll、または Linux オペレーティング システム用の libcdnativefile.so)をインストールします。サポートされているプラットフォーム バージョンのリストについては、「製品互換性マトリックス」を参照してください。
重要:
AIX 環境で WebSphere 6.1 または 7.0 アプリケーションおよび Oracle DB に対して CA APM ChangeDetector を実行している場合、次のような予期しない例外が発生する場合があります: java.security.AccessControlException: Access denied (java.net.SocketPermission hostname:port connect,resolve) at java.security.AccessController.checkPermission(AccessController.java:104)。この例外を回避するには、
<WebSphere_Home>/properties/server.policy
を変更し、Java セキュリティ権限を許可するか、WebSphere 管理コンソールで[Enable application security]チェック ボックスをオフにします。
 
CA APM ChangeDetector を設定する前に
ChangeDetector を設定する前に、さまざまな構成オプションについて理解した上で、お使いの環境に最適な方法を選択します。
  • CA APM ChangeDetector 構成ウィザードの使用 -- この方法では、設定を案内する一連のページに情報を入力することによって CA APM ChangeDetector を設定できます。
  • CA APM ChangeDetector 構成ファイルの変更 -- この方法は、すべてのプラットフォームで使用できます。この方法では、XML ファイルを手動で編集することによって CA APM ChangeDetector を設定できます。CA APM ChangeDetector には、この方法を選択した場合に参考となるサンプル XML ファイルが付属しています。
また、以下の概念についても理解する必要があります。
複数の CA APM ChangeDetector 構成ファイルの使用
単一の ChangeDetector 構成ファイルを指定する代わりに、複数の ChangeDetector 構成ファイルが含まれるディレクトリを指定できます。ディレクトリを指定すると、CA APM ChangeDetector は起動時に、そのディレクトリ内の有効な構成ファイルをすべて読み取ります。
ChangeDetector 構成ディレクトリを指定する方法
  • IntroscopeAgent.profile
    を編集して、以下のプロパティを設定します。
    introscope.changeDetector.profileDir=<path to ChangeDetector directory>
    このプロパティのデフォルト値は、以下のとおりです
    <path to IntroscopeAgent.profile>/changeDetector_profiles.
    以下のプロパティに単一のファイルを指定することもできます。
    introscope.changeDetector.profile
    その場合、CA APM ChangeDetector は、このファイルと、指定された設定ディレクトリ内のすべてのファイルを読み取ります。
データソースについて
データソースは、データソース タイプ(たとえば、ファイル、データベース テーブルのカラム値、ランタイム クラスのインスタンスなど)で種別が定義されているリソースのグループです。リソースは、たとえば、
C:\Introscope\Introscope Enterprise Manager.exe
、データベースのカラム名
buffer_pool
、または
java.lang.System
のように、名前で識別されます。データソースには数多くのリソースを含めることができます。リソースに数多くの値を含めることもできますが、1 度に1つの値のみ可能です。データソース内のリソース名は一意である必要があります。
データソースの定義には、以下の 2 つの方法のいずれかを使用します。
CA APM ChangeDetector 対応のエージェントでは、構成ファイルで指定したデータソースが Investigator の[変更]タブに表示されます。変更データの表示については、「CA APM ChangeDetector データの表示」を参照してください。
各データソースの定義は、
datasource-type
タグ内に含まれる必要があり、その属性には
name
class
があります。
name
は任意の名前にすることができます。この名前は、後で構成ファイルで参照されます。
class
属性は、この種類のデータソースについてデータソース インスタンスの定義を解析するために使用するクラスを定義します。クラスは、以下のインターフェースを実装する必要があります。
com.wily.cd.agent.config.IDataSourceConfig
datasource-type
エレメントにより、エージェントは使用可能なデータソースの種類を判断します。
datasource-type
エレメントを最大限に活用するには、
datasource-instance
エレメントも定義します。各エレメントは、エージェントが監視する物理的なデータソースに対応します。
データソース インスタンスに、同じ名前のリソースを複数含めることはできません。たとえば、同じデータソース インスタンス内に、完全パスと名前が同じファイルが 2 つある状態や、同じ名前の
javaenv
プロパティがある状態は無効です。CA APM ChangeDetector 内のすべてのデータは、データソース インスタンス別に整理されます。
ChangeDetector 構成ウィザードの使用
CA APM ChangeDetector を設定するには、構成ウィザードを使用します。
あるいは、
ChangeDetector-config.xml
を編集することもできます。XML ファイルを編集して CA APM ChangeDetector を設定する方法の詳細については、サンプル構成ファイル を参照してください。
以下の構成ウィザード タスクを実行できます。
複数の CA APM ChangeDetector 構成ファイルを使用することができます。詳細については、「複数の CA APM ChangeDetector 構成ファイルの使用」を参照してください。
構成ウィザードの実行
構成ウィザードを使用すると、手動で XML を編集する代わりに、グラフィカル ユーザ インターフェースを使用してデータソース プロパティを設定できます。
構成ウィザードを実行する方法
  1. CA APM ChangeDetector のインストール後に、
    <Workstation_Home>/tools
    に移動し、コマンド プロンプトから
    configwizard.bat
    を実行して、構成ウィザードを起動します。
    JAVA_HOME
    が設定されていない場合は、コマンド プロンプトから
    configwizard.bat
    を実行するときに、引数として JRE へのパスを指定します。たとえば、
    configwizard.bat s:\sw\sun\jre
    のように指定します。
構成ウィザードによるデータソースの追加
構成ウィザードを使用して、以下のデータソースを追加できます。
データソースを追加する方法
  1. 使用しているプラットフォームを選択して、[次へ]をクリックします。
  2. [CA APM ChangeDetector 構成ファイルを新規作成]を選択して、[次へ]をクリックします。
    ウィザードのこのページから、新しい構成ファイルの作成または既存のファイルの変更を行うことができます。
  3. オプションを選択して、[次へ]をクリックします。
    作成するデータソースは、ウィザードの[現在のデータソース]セクションに表示されます。これらのデータソースはいつでも編集および削除できます。
    追加したデータソースは、[現在のデータソース]に表示されます。さらに、必要に応じて、さまざまなフィールドやエレメントを編集したり、データソースを削除したりできます。
  4. 追加するデータソースの種類を選択して、[次へ]をクリックします。
  5. 追加するデータソースの名前を入力して、[次へ]をクリックします。表示されるオプションは、前述の手順で指定したプラットフォームによって異なります。
  6. データソースをすべて追加したら、[名前を付けて保存]をクリックして、XML ファイルを保存します。
構成ウィザードによるデータソースの変更
データソースの追加後に、データソースを変更できます。
以前のバージョンからアップグレードする場合は、元のファイルのバックアップを保存してアップグレードするか、または既存のファイルに上書きできます。
データソースを変更する方法
  1. プラットフォームを選択して、[次へ]をクリックします。
  2. [既存の ChangeDetector 構成ファイルを修正]を選択して、[次へ]をクリックします。
  3. 変更する構成ファイルを選択します。
  4. ウィザードの左ペインでデータソースを選択して、変更します。
    各データソースにはさまざまなフィールドとエレメントがあり、それぞれを変更できます。変更するには、フィールドを変更するか、エレメントを選択して修正します。
  5. 変更を行ったら、[保存]をクリックしてから、[終了]をクリックします。
構成ウィザードによるデータソースの削除
データソースの追加後に、データソースを削除できます。
データソースを削除する方法
  1. 使用しているプラットフォームを選択して、[次へ]をクリックします。
  2. [選択したデータソースを削除]を選択して、[次へ]を選択します。
  3. データソースを削除する構成ファイルを選択します。
  4. ウィザードの左ペインでデータソースを選択して、削除します。
  5. 変更をすべて行ったら、[保存]をクリックしてから、[終了]をクリックします。
ウィザードによるデータソースの設定
構成ウィザードを使用すると、以下のデータソースを設定できます。新しい構成ファイルへのデータソースの追加が完了したら、[名前を付けて保存]をクリックして名前を付けて XML ファイルを保存します。
ウィザードによるアセンブリ監視の設定
.NET プラットフォームについては、アセンブリ監視データソースを追加または変更できます。
1 番目の除外エレメントにより、正規表現に一致するアセンブリが監視から除外されます。2 番目の除外エレメントにより、正規表現に一致するクラスが監視から除外されます。除外パターンを使用して、スキャンの対象を絞ります。除外パターンの例外を指定するには、包含パターンを追加します。たとえば、除外パターンに「.*」と指定でき、包含パターンに「java\.*」と指定できます。除外パターンまたは包含パターンには正規表現を使用します。正規表現の使用例: foo.*bar..*com\.wily\.(.*)。
ウィザードでアセンブリ監視データソースを設定する方法
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
    ウィザードの次のページが表示されます。
  2. 以下のプロパティ構成情報を入力し、[次へ]をクリックします。
    • イタレーションあたりのクラス数
      -- 定義されているイタレーションごとにロードされるクラス数。数値が低いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • イタレーション間の遅延時間
      -- イタレーション間でクラスが監視されない時間(秒、分、または時間単位)。数値が高いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • 初期待機時間
      -- クラスが監視されるまでの初期時間(秒、分、または時間単位)。
    ウィザードの次のページが表示されます。
  3. 以下の手順に従って、アセンブリおよびクラスの両方に exclude エレメントを追加します。
    1. [exclude エレメントを新規追加]を選択します。
    2. [Next]をクリックします。
    3. 表示されたフィールドに除外パターンを入力します。
    4. 包含パターンを追加するには、[追加]をクリックして、表示されたフィールドにパターンを入力します。必要に応じてこの手順を繰り返します。
    5. [Next]をクリックします。
    6. 上記の手順を繰り返してさらに除外パターンを追加するか、[完了]をクリックします。
     
ウィザードによる Java クラス監視の設定
Java プラットフォームについては、Java クラス監視データソースを追加または変更できます。除外パターンを使用して、スキャンの対象を絞ります。除外パターンの例外を指定するには、包含パターンを追加します。たとえば、除外パターンに「.*」と指定でき、包含パターンに「java\.*」と指定できます。除外パターンまたは包含パターンには正規表現を使用します。正規表現の使用例: foo.*bar..*com\.wily\.(.*)。
ウィザードで java クラス監視データソースを設定する方法
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
    ウィザードの次のページが表示されます。
  2. 以下のプロパティ構成情報を入力し、[次へ]をクリックします。
    • イタレーションあたりのクラス数
      - 数値が低いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • イタレーション間の遅延時間
      - 数値が高いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    ウィザードの次のページが表示されます。
  3. [exclude エレメントを新規追加]を選択し、[次へ]をクリックします。
  4. 表示されたフィールドに除外パターンを入力します。
  5. 包含パターンを追加するには、[追加]をクリックして、表示されたフィールドにパターンを入力します。必要に応じてこの手順を繰り返し、[次へ]をクリックします。
  6. 上記の手順を繰り返してさらに除外パターンを追加するか、[完了]をクリックします。
     
ウィザードによるデータベース監視の設定
ウィザードを使用して、データベース監視データソースを追加または変更できます。
ウィザードでデータベース監視データソースを設定する方法
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
    ウィザードの次のページが表示されます。
  2. Java プラットフォームの以下のデータベース情報を入力し、[次へ]をクリックします。
    • JDBC ドライバ
      - このデータベース用のドライバ。たとえば、oracle.jdbc.driver.OracleDriver です。
    • JDBC ドライバ クラスパス
      - データベース ドライバへのパス(パスを参照することもできます)。
    • JDBC URL:
      データベースへの JDBC URL を入力します。
    • ユーザ名
      - データベースを使用するユーザのユーザ名を入力します。
    • パスワード
      - データベースのパスワードを入力します。パスワードは構成ファイルで自動的に暗号化されます。
    • パスワードの確認
      - 確認のため、パスワードを再入力します。
    • スケジュール タイプ
      - [繰り返し]または[起動後]。変更の少ないデータベース、またはアプリケーションの起動時にチェックのみされるデータベースには、起動後を選択します。
    • 繰り返し間隔
      - スケジュールを繰り返しにした場合は、間隔を選択します。数値が高いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • イタレーション間の遅延時間
      - 数値が高いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    ウィザードの次のページが表示されます。
  3. .NET プラットフォームの以下のデータベース情報を入力し、[次へ]をクリックします。.NET プラットフォームでは、ユーザ名とパスワードを URL プロパティ内に指定できますが、何も指定しなくてもかまいません。ウィザードでは、URL 内のこれらの値はチェックされません。
    • URL
      - データベースへの URL を入力します。
    • ユーザ名
      - データベースを使用するユーザのユーザ名を入力します。
    • パスワード
      - データベースのパスワードを入力します。パスワードは構成ファイルで自動的に暗号化されます。
    • パスワードの確認
      - 確認のため、パスワードを再入力します。
    ウィザードの次のページが表示されます。
  4. SQL ステートメントを追加するには、[SQL ステートメントを新規追加]を選択して、[次へ]をクリックします。ウィザードでは、SQL ステートメントは検証されません。データベースに有効な SQL ステートメントを使用してください。
    上記の手順を繰り返して SQL ステートメントを追加するか、[完了]をクリックします。例:
    SELECT name, value FROM v$parameter
ウィザードによるファイル システム監視の設定
ウィザードを使用して、ファイル システム監視データソースを追加または変更できます。監視対象のファイル システムに対する読み取り権限が必要です。また、ファイル システムがネットワーク上にある場合、CA APM ChangeDetector がファイルを検出するには、ネットワークが正常に機能している必要があります。
ウィザードでファイル システム監視データソースを設定する方法
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
    ウィザードの次のページが表示されます。
  2. [scan-directory エレメントを新規追加]を選択し、[次へ]をクリックします。
  3. ディレクトリ名と必須フィールド([ディレクトリ名]、[再帰]、[ファイル セット]、および[有効])を入力します。
    • ディレクトリ名
      - CA APM ChangeDetector がスキャンするディレクトリのパスを入力します。たとえば、
      C:\\WebLogic\\myApplicationHome
      のように入力します。
    • 再帰
      - true に設定すると、CA APM ChangeDetector は指定したディレクトリ内のすべてのサブフォルダもスキャンします。
    • ファイル セット
      - スキャンディレクトリに関連付けるファイルセットを選択します。
    • 有効
      - テストやその他の目的のため、スキャン ディレクトリを無効にできます。ただし、スキャン ディレクトリを有効化した後に無効化すると、この scan-directory エレメントに含まれるファイルは、CA APM ChangeDetector では削除されたファイルとして レポートされます。
  4. 除外パターンを追加するには、[以下を新規追加] をクリックして、パターンを入力します。必要に応じてこの手順を繰り返します。
  5. [ファイル セットを作成または修正]をクリックして、ファイルセットを追加するか、または既存のファイルセットを編集します。
    • [ファイル セットを新規追加]を選択して、[次へ]をクリックします。
    • ファイルセット名を入力して、[次へ]をクリックします。
  6. [次へ]をクリックし、上記の手順に従って scan-directory エレメントをさらに追加します。scan-directory エレメントの追加が済んだら、[完了]をクリックします。
  7. include/exclude エレメントを入力して、スキャンの対象を絞り込みます。除外パターンの例外を指定するには、包含パターンを追加します。
    • [exclude エレメントを新規追加]を選択し、[次へ]をクリックします。
    • 表示されたフィールドに除外パターンを入力します。
    • 包含パターンを入力するには、[追加]をクリックして、表示されたフィールドに包含パターンを入力します。必要に応じてこの手順を繰り返します。
  8. 以下の情報を入力して[次へ]をクリックします。
    • イタレーションあたりのファイル数
      - 数値が低いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • ファイル イタレーション間の遅延時間
      - 数値が高いと CPU 使用率が下がりますが、スキャン時間が長くなります。
    • アップロードの最大ファイル サイズ
      - サーバにアップロードされる ASCII ファイルの最大サイズです。アップロードされた ASCII ファイルは、CA APM ChangeDetector の[テキスト差分表示]で表示できます。
  9. ファイル セットを追加し、[このセクションを完了]を選択して[次へ]をクリックします。アーカイブ プロパティは Java プラットフォーム上でのみ適用可能です。
     
ウィザードによる .NET 環境変数監視の設定
.NET プラットフォームについては、環境変数データソースを追加または変更できます。
ウィザードでファイル システム監視データソースを設定する方法
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
  2. [exclude エレメントを新規追加]を選択して[次へ]をクリックし、exclude エレメントを追加します。
    表示されるフィールドに、除外パターンを入力します。除外パターンを使用して、スキャンの対象を絞ります。除外パターンの例外を指定するには、包含パターンを追加します。たとえば、除外パターンに .* を指定して、包含パターンに java\.* を指定します。
    除外または包含パターンには正規表現を使用します。以下に例を示します。
    foo
    .*bar.
    (.*)
    java\.*
  3. [以下を新規追加]を選択して[次へ]をクリックし、包含パターンを追加します。
    表示されるフィールドに、包含パターンを入力します。
  4. 必要に応じて、上記の手順を繰り返してさらに除外/包含パターンを追加します。追加が済んだら、[完了]をクリックします。
ウィザードによる Java システム プロパティ監視の設定
Java システム プロパティ監視データソースを追加または変更できます。
以下の手順に従います。
  1. 英数字を使用してデータソース名を入力し、[次へ]をクリックします。
  2. [exclude エレメントを新規追加]を選択して[次へ]をクリックし、exclude エレメントを追加します。
    表示されるフィールドに、除外パターンを入力します。除外パターンを使用して、スキャンの対象を絞ります。除外パターンの例外を指定するには、包含パターンを追加します。たとえば、除外パターンに .* を指定して、包含パターンに java\.* を指定します。
    除外または包含パターンには正規表現を使用します。以下に例を示します。
    foo
    .*bar.
    (.*)
    java\.*
  3. [以下を新規追加]を選択して[次へ]をクリックし、包含パターンを追加します。
    表示されるフィールドに、包含パターンを入力します。
CA APM ChangeDetector 構成ファイルの変更
XML 構成ファイルを編集して、手動で設定を変更できます。この方法は、すべてのプラットフォームで使用できます。CA APM ChangeDetector には、この方法を選択した場合に参考となるサンプル XML ファイルが付属しています。
ChangeDetector-config.xml ファイルについて
ChangeDetector-config.xml を基にしてカスタム構成ファイルを作成できます。このファイルには、CA APM ChangeDetector で監視する変更のタイプを指定します。CA APM ChangeDetector は、変更をデータ ソース別にグループ化します。この構成ファイルを使用して、以下の構成を変更できます。:
重要:
完全ファイル パスを使用してファイルを検索すると、CPU 使用率が急上昇することがあります。これを回避するには、完全パス ファイル名のみを使って検索してください。完全パス ファイル名のみを使用して検索するには、以下のように
fullpath="true"
プロパティを追加して
ChangeDetector-config.xml
ファイルを編集します。
<scan-directory recursive="true" name="/opt/Oracle" fileset="default" enabled="true" fullpath="true" > </scan-directory>
構成ファイルでのシステム プロパティまたはエージェント プロパティの使用
構成ファイルでは、XML 属性の値としてシステム プロパティまたはエージェント プロファイル プロパティを使用できます。これによって、実行時に解決されるプロパティを CA APM ChangeDetector 構成ファイルで使用できます。システム プロパティとエージェント プロファイル プロパティの両方に値が与えられる場合は、システム プロパティが優先されます。
これらのプロパティの値は、実行時に、有効なシステム プロパティまたはエージェント プロファイル プロパティにマップされる必要があります。
以下に例を示します。
<scan-directory name="${APPLICATION_HOME}/bin/" recursive="true" fileset="default"/>
この例では
${APPLICATION_HOME}
は実行時に現在の値に置き換えられます。これらのプロパティ値は実行時に有効なシステムまたはエージェント プロファイル プロパティにマップする必要があります。
手動によるデータベース監視プロパティの設定
database
データソース インスタンスは、CA APM ChangeDetector が標準準拠のデータベースから変更データを収集する方法を指示します。設定プロパティは、使用しているプラットフォームによってわずかに異なります。特定のプラットフォームにのみ適用される属性については、このセクションでそのように注釈されています。
このエレメントは、サンプル Java ChangeDetector-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
 
<datasource-instance name="Orcl_on_aserver" type="database" version="8.0" driver="oracle.jdbc.driver.OracleDriver" driverClasspath="C:\\somePathTo\\classes12.zip" url="jdbc:oracle:thin:@aserver:1521:orcl" username="a3f973777b9d" password="f478831d9bcd65" isClearText="false" > <sql> SELECT name, value FROM v$parameter </sql> <schedule type="repetitive" interval="1" unit="min" /> </datasource-instance>
クラスパスの区切り文字として ; または : のいずれかを使用すると、データベース ドライバへのクラスパスを複数指定できます。
データベースに使用するユーザ名とパスワードがある場合は、それらを指定できます。ただし、ユーザ名とパスワードのどちらか一方のみに値を指定することはできません。
セキュリティ上の理由で、ユーザ名とパスワードに指定した値は、自動的に暗号化された値に置換されます。これらの値を変更するには、まずプロパティ
isClearText=”true”
を設定してから、変更を行います。次にエージェントが実行される際に、
isClearText
プロパティは自動的に
false
にリセットされます。
データベース監視を使用する場合は、すべての
datasource-instance
エレメントで定義する必要のある
name
type
属性のほかに、以下の属性を
datasource-instance
に設定する必要があります。
  • Java プラットフォームの場合、
    – driver
    -- 使用する JDBC 準拠ドライバのクラス名。上記の例では Oracle データベースに接続するため、このカスタム構成ファイルには以下のドライバを指定します。
    oracle.jdbc.driver.OracleDriver
  • Java プラットフォームの場合 –
    driverClasspath
    -- driver 属性で参照されているドライバが含まれているアーカイブのパス。プラットフォーム用のクラスパスの区切り文字を使用すると、複数のドライバへのパスを指定できます。
  • url
    -- データベースへの接続に使用される JDBC URL。
  • username
    -- データベースへの接続に使用されるユーザ名。この値は、エージェントの再起動時に
    cleartext
    プロパティが
    true
    に設定された場合でも暗号化されます。
  • password
    -- データベースへの接続に使用されるパスワード。この値は、エージェントの再起動時に
    cleartext
    プロパティが
    true
    に設定された場合でも暗号化されます。
  • isClearText
    -- ユーザ名とパスワードが暗号化されるかどうかを定義します。値が
    false
    の場合は、ユーザ名とパスワードが暗号化され、構成ファイルは暗号化された値で上書きされます。
このプロパティは、セキュリティ上の理由によりデフォルトで
false
に設定されています。
true
に設定した場合、エージェントを再起動するとプロパティは
false
に戻ります。
database
タイプの datasource-instance エレメントでは、
sql
schedule
の 2 つの最上位エレメントを定義できます。
sql
エレメントには、監視する予定のテーブルから情報を収集するために使用する SQL ステートメントを指定します。このタイプの
datasource-instance
エレメント内には任意の数の SQL エレメントが含まれます。SQL ステートメントの結果は 2 つの列のみである必要があり、最初の列の値は、定義されている SQL エレメントの数にかかわらず、一意(主キー)である必要があります。
resultset
の 1 番目のカラムに NULL 値は許可されません。2 番目のカラムに NULL 値がある場合は、行が存在しないものとして処理されます(
resultset
にこの行が存在しない)。
schedule
エレメントでは、データベース監視が変更をスキャンする頻度を定義します。このエレメントでは、
type
属性を指定する必要があります。この属性では、以下の値が有効です。
  • repetitive
    --
    type
    属性の値が
    repetitive
    である場合、
    interval
    属性および
    unit
    属性を定義する必要があります。
    interval
    属性には整数値を指定します。
    unit
    属性には、
    minute
    hour
    、または
    sec
    のうちの 1 つを指定します。この 2 つの属性によって、CA APM ChangeDetector がデータベースの変更をスキャンする頻度が決まります。前述の例では、CA APM ChangeDetector は 1 分ごとにスキャンします。10 秒ごとにスキャンさせるには、
    interval
    の値に
    10
    を、
    unit
    の値に
    sec
    を指定します。
  • post-startup
    --
    type
    属性の値が
    post-startup
    である場合、その他の属性を定義する必要はありません。
    type
    属性にこの値を使用すると、CA APM ChangeDetector はエージェントの起動後に 1 度だけ、指定した SQL ステートメントをスキャンします。
手動によるファイル システム監視プロパティの設定
CA APM ChangeDetector のファイル監視システムでは、I/O オーバーヘッドに対するさまざまなニーズと許容度を抱える組織であっても、ファイル変更の監視を制御できます。このため、変更が発生したときから検出されるまで、処理と I/O コストおよび時間のバランスを保つことができます。
ファイル モニタ プロパティは大文字と小文字を区別します。たとえば、監視対象のディレクトリ名が
i18n
である場合に、
scan-directory name
プロパティを
I18N
に設定すると、CA APM ChangeDetector は監視対象のディレクトリを見つけることができません。
このエレメントは、サンプル Java ChangeDetector-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
 
<datasource-instance name="C_Drive" type="file" version="8.0"> <!-- datasource-instance specific XML here --> <property name="explodeArchiveFiles" value="true" /> <!-- Accepted units are hour, min, sec --> <property name="delayBetweenIterations" value="1" unit="sec" /> <property name="filesPerIteration" value="1" /> <property name="delayBetweenArchiveIterations" value="10" unit="sec" /> <property name="archiveFilesPerIteration" value="1" /> <!-- Accepted units are bytes, KBytes, MBytes --> <property name="maxFileSizeToUpload" value="4" unit="KB" /> <property name="useDigest" value="needed" /> <fileset name="default"> <exclude pattern="(.*)\.err" /> <exclude pattern="(.*)\.log" /> <exclude pattern="(.*)\.lok" /> <exclude pattern="(.*)\.tlog" /> <exclude pattern="(.*)\.log0(.*)" /> </fileset> <fileset name="NoCode"> <include-fileset name="default" /> <exclude pattern="(.*)\.jar" > <include pattern="(.*)wily(.*)\.jar" /> </exclude> <exclude pattern="(.*)\.zip" /> </fileset> <!-- typically, the wily agent is installed in the "wily" directory. --> <scan-directory name="wily" recursive="true" fileset="default"> <exclude name="data" /> </scan-directory> <!-- scan the java home directory, as specified in the java.home system property --> <scan-directory recursive="true" fileset="default" name="${java.home}" enabled="false"> <exclude name="lib/zi" /> </scan-directory> <!-- directories to be scanned in a typical jboss installation --> <scan-directory name="." recursive="true" fileset="default" enabled="false"> <exclude name="log" /> <exclude name="tmp" /> </scan-directory> <!-- test scan directory --> <scan-directory recursive="true" fileset="NoCode" name="." enabled="true" /> <!-- directories to be scanned in a typical WebSphere 5.0ee installation --> <!-- basically exclude the following dirs: _uninst, _uninstPME, BRBeans, classes, installableApps, logs, temp, tranlog, wstemp --> <scan-directory recursive="true" name="." fileset="default" enabled="false"> <exclude name="_uninst" /> <exclude name="_uninstPME" /> <exclude name="logs" /> <exclude name="temp" /> <exclude name="tranlog" /> <exclude name="wstemp" /> </scan-directory> </datasource-instance>
file データソース インスタンス タイプのエレメントの定義
file タイプの datasource-instance には、以下の 3 つの最上位エレメントを定義できます。
datasource-instance の
file
タイプは、構成ファイルの先頭でファイル システム監視として定義されます。
ファイル変更監視システムは、
file
データソース インスタンスの設定で指定されたすべてのファイルを順にスキャンします。CPU は、作業単位で収集タスクに割り当てられますが、収集タスクの終了後に開放されて他のタスクに戻ります。
property エレメント
property
エレメントには、
name
属性と
value
属性が必要です。ここで定義されている property の一部には、
unit
属性も使用されています。
.NET プラットフォームはアーカイブをサポートしません。アーカイブに関するプロパティはすべて Java 専用として定義できます。
このタイプの datasource-instance では、以下の property を使用できます。
  • explodeArchiveFiles
    このプロパティは、Java エージェントを使用する場合にのみ適用可能です。これは、.NET エージェントが動作する環境とは互換性がありません。
    このプロパティの value 属性には、
    true
    または
    false
    を指定できます。
    value 属性に
    true
    を指定すると、CA APM ChangeDetector はアーカイブ ファイルの内容をレポートします。ChangeDetector が監視しているアーカイブ ファイル内で変更が発生すると、少なくとも 2 つの変更イベントが送信されます。1 つはアーカイブ ファイルの変更について、もう 1 つはそのアーカイブ ファイル内のファイルの変更についてです。変更されたアーカイブファイル内のファイルもアーカイブ ファイルである場合、CA APM ChangeDetector はそのアーカイブ ファイルも開いて、ネストされたアーカイブ内のファイルの変更イベントも送信します(アーカイブのネストが続く限り、この動作が続きます)。
    アーカイブとしてサポートされるのは、ZIP および GZIP ファイル形式のみです(たとえば、zip、gzip、jar、ear、war、rar、sar)。CA APM ChangeDetector では、
    tar
    ファイルはサポートされていません。
    explodeArchiveFiles
    の value に false が設定されている場合、CA APM ChangeDetector はアーカイブの内容を調べません。アーカイブへの変更は、アーカイブ自体の修正、追加、削除としてレポートされます。
    デフォルト値は
    false
    です。
  • delayBetweenIterations
    このプロパティの value には整数を指定し、unit には
    sec、min
    、または
    hour
    で単位を指定できます。
    このプロパティでは、ファイル キューへの各イタレーション間のスリープ時間を定義します。このプロパティは、
    filesPerIteration
    プロパティと関連します。
    デフォルト値は 3 秒です。
  • filesPerIteration
    このプロパティの value には整数を指定し、
    delayBetweenIterations
    プロパティで定義された作業単位でのファイル数を定義します。
    このプロパティでは、スキャンされるファイルの数を指定します。ファイルのスキャン後に、CPU が解放されます。filesPerIteration に 10 を指定した場合、CA APM ChangeDetector は 10 個のファイルの変更をスキャンした後、
    delayBetweenIterations
    プロパティで定義されている間スリープ状態になります。スリープ時間の終了後に次の 10 ファイルをスキャンして、またスリープ状態に戻る、という動作を繰り返します。
    デフォルト値は 5 です。
  • delayBetweenArchiveIterations
    このプロパティの value には整数を指定し、unit には
    sec、min
    、または
    hour
    で単位を指定できます。
    このプロパティでは、アーカイブ キューでのスリープ時間を制御します。CA APM ChangeDetector がファイルをスキャンして、そのファイルがアーカイブであることがわかると、CA APM ChangeDetector はそのアーカイブをアーカイブ キューに置き、その内容を検査できるようにします。
    このプロパティは、
    explodeArchiveFiles
    true
    に設定されている場合にのみ使用できます。その他の場合、アーカイブ ファイルは通常のファイルとして処理されます。
    デフォルト値は 10 秒です。
  • archiveFilesPerIteration
    filesPerIteration
    プロパティと同じ属性を使用できます。f
    ilesPerIteration
    プロパティと同様に、
    archiveFilesPerIteration
    はアーカイブ キュー用であり、イタレーションごとに内容がスキャンされるアーカイブの数を制御します。このプロパティは、
    explodeArchiveFiles
    true
    に設定されている場合にのみ使用できます。その他の場合、アーカイブ ファイルは通常のファイルとして処理されます。
    デフォルト値は 1 です。
    注:
    アーカイブの内容はすべて一度にアップロードされます(
    filesPerIteration
    の値は適用されません)。ただし、スキャン中のアーカイブ内にアーカイブが見つかった場合、そのネストされたアーカイブはアーカイブ キューに追加されます。
  • maxFileSizeToUpload
    このプロパティの value には整数を指定し、unit には
    B
    KB
    、または
    MB
    で単位を指定できます。このプロパティでは、内容がサーバに送られるファイルの最大サイズを定義します。現在、このプロパティで定義されたファイル サイズ以下の ASCII ファイルのみが送られます。
    デフォルト値は 50 KB です。
  • useDigest
    このプロパティでは、変更の検出にメッセージ ダイジェスト(MD5 など)を使用する方法を定義します。ダイジェストを使用すると、CA APM ChangeDetector は、ハッシュ比較を行い、ファイルのタイムスタンプの変更は無視します。このプロパティには以下の value を指定できます。
    • never: ダイジェストは使用されません
    • always: 常にダイジェスト比較が行われます
    • needed: タイムスタンプとファイル サイズが変更されている場合にのみダイジェストが使用されます(デフォルト)
fileset エレメント
fileset
エレメントの例を以下に示します。
<fileset name="default"> <exclude pattern="(.*)\.err" /> <exclude pattern="(.*)\.log" /> <exclude pattern="(.*)\.lok" /> <exclude pattern="(.*)\.tlog" /> <exclude pattern="(.*)\.log0(.*)" /> </fileset> <fileset name="NoCode"> <include-fileset name="default" /> <exclude pattern="(.*)\.jar" > <include pattern="(.*)wily(.*)" /> </exclude> <exclude pattern="(.*)\.zip" /> </fileset> <fileset name="all"> <exclude pattern="(.*)> <include pattern="(.*) /> </exclude> </fileset>
ファイルセットでは、スキャン対象とする、または除外するファイルのパターンを定義します。fileset エレメントでは、以下のサブエレメントを使用できます。
  • exclude
  • include-fileset
exclude
エレメントには、属性
pattern
を定義する必要があります。
exclude
エレメントには、サブノードとして
include
エレメントを含めることができます。
include
エレメントには、属性
pattern
を定義する必要があります。
include
エレメントは、
exclude
エレメントを無効にする目的で使用します。上記の例では、ファイルセット
NoCode
について、.
jar
で終わるファイル名は、名前に
wily
があるファイルを除いてすべて除外されます。
include-fileset
エレメントには、属性
name
を定義する必要があります。
include-filese
t エレメントを使用する場合は、含まれるファイルセットを事前に定義する必要があります。上記の例では、ファイルセット
NoCode
にファイルセット
default
が含まれています。これら 2 つのファイルセットの順序を逆にして、default ファイルセットを 2 つ目に定義すると、設定は無効になります。ファイルセットで
include-fileset
エレメントを使用すると、参照されるファイルセットの包含および除外パターンはマスタ エレメントの一部になります。上記の例では、ファイルセット「
NoCode
」に除外パターン
*.jar、*.zip、*.err、*.log、*.lok
、などが含まれます。
fileset エレメント内での
exclude
および
include-fileset
エレメントの順序は関係ありません。ファイルは、定義された除外パターンに一致しない場合、スキャン対象になります。定義された除外パターンに一致する場合、そのファイルは、除外パターン内に定義された包含パターンに一致するかどうか確認されます。包含パターンに一致する場合、そのファイルはスキャン対象になります。包含パターンに一致しない場合、そのファイルはスキャン対象から外されます。
scan-directory エレメント
scan-directory
エレメントでは、スキャン対象となるディレクトリを定義します。
scan-directory
エレメントの属性は、
name
recursive
fileset
、および
enabled
です。
  • name
    属性では、スキャン対象となるディレクトリを定義します。必須です。たとえば、
    c:\\test
    または
    C:/test
    のように指定します。
  • recursive
    属性には、
    true
    または
    false
    を value に指定します。この属性では、ファイル システム監視が、検出するディレクトリのスキャンを繰り返すかどうかを定義します。デフォルト値は
    true
    です。
  • fileset 属性には、このデータソース インスタンスで使用するファイルセットを定義します。指定するファイルセットは、構成ファイルでこのエレメントより前に定義されている必要があります。これは必須の属性です。
  • enabled
    属性には、
    true
    または
    false
    を value に指定します。
    scan-directory
    エレメントを有効化または無効化します。
scan-directory
エレメントには、子の
exclude
エレメントを使用できます。
exclude
エレメントには、
name
属性が必要です。
name
属性は、ディレクトリ にマップされる必要があります。
注:
name 属性に指定する値には正規表現を使用できません。実際のディレクトリにマップする文字列を指定する必要があります。パターンに基づいて除外するには、
fileset
エレメントの指定内容を修正します。
以下に、サンプル Java ChangeDetector-config.xml ファイルに定義されているこのエレメントの例を示します。
<scan-directory name="." recursive="true" fileset="default" enabled="false"> <exclude name="log" /> <exclude name="tmp" /> </scan-directory>
手動によるJava クラス監視プロパティの設定
classmonitor
データソース インスタンスによって、CA APM ChangeDetector が監視する Java クラスが決まります。クラス名とそのクラスローダをリソース名として使用します。クラス定義に対応するバイトアレイがリソースの値として使用されます。
このタイプの
datasource
インスタンスは、CA APM ChangeDetector のインスタンスあたり 1 つしか使用できません。
Java はロードオンデマンドで動作するため、CA APM ChangeDetector では、クラスが実行中のバイナリの一部ではなくなったのか、またはまだロードされていないのかを判断できません。このため、
classmonitor
データソースでは、削除による変更が生成されません。
このエレメントは、サンプル Java ChangeDetector-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
 
<datasource-instance name="Java class monitor" type="classmonitor" version="8.0"> <property name="delayBetweenIterations" value="2" unit="sec"/> <property name="classesPerIteration" value="100" /> <exclude pattern="foo" /> <exclude pattern=".*bar.*"> <include pattern="hello" /> <include pattern=".*world.*" /> </exclude> </datasource-instance>
exclude
エレメントの構文は、Java システム プロパティ監視と同じです。
classmonitor データソース インスタンス タイプのエレメントの定義
Java プラットフォームの場合、
classmonitor
タイプのデータソース インスタンスには、2 つの property エレメントを定義できます。これらの各
property
エレメントには、以下のように
name
属性と
value
属性が必要です。
  • delayBetweenIterations
    このプロパティの value には整数を指定し、unit には sec、min、または hour で単位を指定できます。
    このプロパティでは、クラス キューへの各イタレーション間のスリープ時間を定義します。このプロパティは、
    classesPerIteration
    プロパティと関連します。
    デフォルト値は 2 秒です。
  • classesPerIteration
    このプロパティの value には整数を指定し、
    delayBetweenIterations
    プロパティで定義された作業単位でのクラス数を定義します。
    このプロパティでは、スキャンされるクラスの数を指定します。クラスのスキャン後に、CPU が解放されます。classesPerIteration に 10 を指定した場合、CA APM ChangeDetector は 10 個のクラスの変更をスキャンした後、
    delayBetweenIterations
    プロパティで定義されている間スリープ状態になります。スリープ時間の終了後に次の 10 クラスをスキャンして、またスリープ状態に戻る、という動作を繰り返します。
    デフォルト値は 100 です。
手動によるJava システム プロパティ監視の設定
javaenv
データソース インスタンスによって、CA APM ChangeDetector が監視する Java システム プロパティが決まります。CA APM ChangeDetector は、プロセスの再起動間の Java システム プロパティの変更のみを監視し、実行中の Java プログラムによって引き起こされた実行時の変更は監視しません。このタイプの変更の収集は、起動時に一度だけ行われます。プロパティ名がリソース名として使用され、プロパティの値がこれらのリソースの値を構成します。
このエレメントは、サンプル Java ChangeDetector-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
 
<datasource-instance name="Java system properties" type="javaenv" version="8.0"> <exclude pattern="foo" /> <exclude pattern=".*bar.*"> <include pattern="hello" /> <include pattern=".*world.*" /> </exclude> </datasource-instance>
javaenv
データソース内では、
exclude
エレメントのみを最上位エレメントとして定義できます。
exclude
エレメントには、孫エレメントを使用できます。
exclude
エレメントを使用して、CA Introscope に表示させないプロパティを除外します。
exclude
エレメントには、
pattern
属性を定義する必要があります。たとえば、CA Introscope に
foo
プロパティを表示させないようにするには、上記の例のように
exclude
エレメントを使用します。
exclude
エレメントには、
include
サブノードをいくつでも定義できます。
exclude
エレメントと同様に、
include
エレメントには
pattern
属性を定義する必要があります。
include
サブノードを使用すると、
exclude
エレメントの動作を無効にすることができます。上記の例に示すように、
.*bar.*
に一致するプロパティは、
hello
または
.*world.*
に一致するプロパティを除いてすべて除外できます。
手動によるアセンブリ監視プロパティの設定
.NET プラットフォームの場合、
classmonitor
データソースは、.NET 環境用のアセンブリ監視を表します。このデータソースによって、CA APM ChangeDetector が監視するアセンブリが決まります。
アセンブリ監視は、一度に 1 つのメソッドをロードします。メソッドには、以下のメタデータが含まれます。
  • アセンブリ名
  • バージョン
  • クラス
  • メソッド
  • メソッド シグネチャ
同じ名前を持つアセンブリのバージョン間で、メタデータの変更が監視できます。たとえば、
cd_sample.dll 1.0.0
および
cd_sample.dll version 1.0.1
内のクラスは、バージョンが異なる同じメタデータとして扱われます。このデータへの変更が監視され、Workstation Investigator に表示されます。ただし、アセンブリの名前が変わると、そのアセンブリは新しいリソースとして扱われるため、その中のクラスは新しいリソースとなり、追加イベントとして扱われます。
このエレメントは、サンプル .NET ChangeDetectorDotnet-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
<datasource-instance name="Assembly Monitor" type="classmonitor" version="8.0"> <property name="initialWaitTime" value="30" unit="sec" /> <property name="delayBetweenIterations" value="2" unit="min" /> <property name="classesPerIteration" value="5" /> <excludeassembly pattern=".\mscorlib\.dll"/> <excludeassembly pattern=".\System\.dll"/> <excludeassembly pattern=".\System\.Xml\.dll"/> <excludeassembly pattern=".\System\.Web\.dll"/> <excludeassembly pattern=".\System\.Configuration\.dll"/> <excludeassembly pattern=".\wily\.."/> <excludeassembly pattern=".\Microsoft\.JScript\.dll"/> <excludeassembly pattern=".\VJSharpCodeProvider\.dll"/> <excludeassembly pattern=".\System\.Data\.dll"/> <excludeassembly pattern=".\Oracle\.DataAccess\.dll"/> <excludeassembly pattern=".\System\.Web\.Mobile\.dll"/> <excludeassembly pattern=".\System\.ServiceModel\.dll"/> <excludeassembly pattern=".\SMDiagnostics\.dll"/> <excludeassembly pattern=".\System\.Drawing\.dll"/> <excludeassembly pattern=".\System\.Web\.RegularExpressions\.dll"/> <excludeassembly pattern=".\Microsoft\.VisualBasic\.dll"/> <excludeassembly pattern=".\CppCodeProvider\.dll"/> <excludeassembly pattern=".\System\.EnterpriseServices\.dll"/> <excludeassembly pattern=".\System\.Transactions\.dll"/> <exclude pattern="com\.wily\.(.*)"/> </datasource-instance>
これらのエレメントの構文を以下に示します。
  • excludeassembly
    <!-- exclude assemblies -->
    <excludeassembly pattern=".\mscorlib\.dll"/>
    <excludeassembly pattern=".\System\.dll"/>
    <excludeassembly pattern=".\System\.Xml\.dll"/>
    <excludeassembly pattern=".\System\.Web\.dll"/>
    <excludeassembly pattern=".\System\.Configuration\.dll"/>
    <excludeassembly pattern=".\wily\.."/>
    <excludeassembly pattern=".\Microsoft\.JScript\.dll"/>
    <excludeassembly pattern=".\VJSharpCodeProvider\.dll"/>
    <excludeassembly pattern=".\System\.Data\.dll"/>
    <excludeassembly pattern=".\Oracle\.DataAccess\.dll"/>
    <excludeassembly pattern=".\System\.Web\.Mobile\.dll"/>
    <excludeassembly pattern=".\System\.ServiceModel\.dll"/>
    <excludeassembly pattern=".\SMDiagnostics\.dll"/>
    <excludeassembly pattern=".\System\.Drawing\.dll"/>
    <excludeassembly pattern=".\System\.Web\.RegularExpressions\.dll"/>
    <excludeassembly pattern=".\Microsoft\.VisualBasic\.dll"/>
    <excludeassembly pattern=".\CppCodeProvider\.dll"/>
    <excludeassembly pattern=".\System\.EnterpriseServices\.dll"/>
    <excludeassembly pattern=".\System\.Transactions\.dll"/>
  • exclude
    <exclude pattern="com\.wily\.(.*)"/>
  • include
    <excludeassembly pattern=".\System\.dll"/>
    <exclude pattern="abc\.xyz\.(.*)">
    <include pattern="abc\.xyz\.asdf\.(.*)"/> </exclude>
classmonitor
タイプのデータソース インスタンスには、プロパティ エレメントを定義できます。これらの各
property
エレメントには、以下のように
name
属性と
value
属性が必要です。
  • initialWaitTime
    このプロパティの value には整数を指定し、unit には sec、min、または hour で単位を指定できます。
    このプロパティでは、エージェントが、アセンブリが最後にロードされてからクラスのスキャンを開始するまで待機する時間を定義します。
  • delayBetweenIterations
    このプロパティの value には整数を指定し、unit には sec、min、または hour で単位を指定できます。
    このプロパティでは、クラス キューへの各イタレーション間のスリープ時間を定義します。このプロパティは、classesPerIteration プロパティと関連します。
    デフォルト値は 2 秒です。
  • classesPerIteration
    このプロパティの value には整数を指定し、delayBetweenIterations プロパティで定義された作業単位でのクラス数を定義します。
    このプロパティでは、スキャンされるクラスの数を指定します。クラスのスキャン後に、CPU が解放されます。classesPerIteration に 10 を指定した場合、CA APM ChangeDetector は 10 個のクラスの変更をスキャンした後、delayBetweenIterations プロパティで定義されている間スリープ状態になります。スリープ時間の終了後に次の 10 クラスをスキャンして、またスリープ状態に戻る、という動作を繰り返します。
    デフォルト値は 100 です。
手動による .NET 環境変数監視プロパティの設定
.NET 環境変数監視データソース(javaenv)インスタンスによって、CA APM ChangeDetector が監視する環境変数が決まります。CA APM ChangeDetector は、プロセスの再起動時の環境変数の変更のみを監視し、実行中のアプリケーションによって引き起こされた実行時の変更は監視しません。このタイプの変更の収集は、起動時に 1 回のみ行われます。変数名がリソース名として使用され、変数の値がこれらのリソースの値を構成します。
このエレメントは、サンプル .NET ChangeDetectorDotnet-config.xml ファイル内に示されているカスタム設定ファイルの例で定義されています。この例はサンプルのデータであり、ユーザのデータ コンテンツを反映しているとは限りません。異なるバージョンの CA APM ChangeDetector を使用している場合は、該当するコンテンツに適宜置き換えてください。
<datasource-instance name="System Properties" type="javaenv" version="8.0"> <exclude pattern="foo" /> <exclude pattern=".*bar.*"> <include pattern="hello" /> <include pattern=".*world.*" /> </exclude> </datasource-instance>
javaenv データソース内では、exclude エレメントのみを最上位エレメントとして定義できます。exclude エレメントには、孫エレメントを使用できます。
exclude エレメントを使用して、CA Introscope に表示させないプロパティを除外します。exclude エレメントには、pattern 属性を定義する必要があります。たとえば、CA Introscope に foo プロパティを表示させないようにするには、上記の例のように exclude エレメントを使用します。
exclude エレメントには、include サブノードをいくつでも定義できます。exclude エレメントと同様に、include エレメントには pattern 属性を定義する必要があります。include サブノードを使用すると、exclude エレメントの動作を無効にすることができます。上記の例に示すように、.*bar.* に一致するプロパティは、hello または .*world.* に一致するプロパティを除いてすべて除外できます。
既存の ChangeDetector-config.xml ファイルの更新
CA APM ChangeDetector をアップグレードすると、構成ファイルは自動的に新しい形式に更新されます。
既存の設定ファイルを元の名前
.bak
にアップグレードするには、設定ファイルおよび現在のディレクトリへの書き込み権限が必要です。
CA APM ChangeDetector によって、既存の構成ファイルの名前が変更され、アップグレード後のファイルに置き換えられます。既存のファイルの名前が変更できない場合、またはディレクトリに書き込みできない場合は、新しい更新構成ファイルは一時ディレクトリに保存されて、既存のファイルを新しいファイルで上書きするように求められます。
エージェント構成ファイルの変更
IntroscopeAgent.profile
を変更して、CA APM ChangeDetector エージェント拡張 ID、CA APM ChangeDetector 構成ファイルのパス、およびフェールオーバ メカニズムを指定します。これらの変更は必ずしも必要なく、自動 ID 割り当てを選択することも可能です。
各エージェント用の構成ファイルにそれぞれパスを確実に指定してください。
IntroscopeAgent.profile
から複数のエージェントを実行する場合は、コマンド ラインでプロパティを定義します(たとえば、アプリケーション サーバの起動スクリプトを使用)。これによって、CA Introscope は CA APM ChangeDetector エージェント拡張構成を区別できます。新しい IntroscopeAgent プロファイルの作成方法については、「」を参照してください。
ChangeDetector エージェント ID と構成ファイルへのパスの設定(オプション)
  1. ChangeDetector 拡張の各エージェント インスタンスの
    IntroscopeAgent.profile
    に、
    IntroscopeAgentBackup.profile
    のような覚えやすい名前を付けて、別のディレクトリにバックアップします。
  2. IntroscopeAgent.profile
    を編集して、以下のプロパティを設定します。
    introscope.changeDetector.agentID=<
    ChangeDetector agent ID>
    agentID
    プロパティに使用できるのは、英数字と、特殊文字であるアンダースコア(_)およびハイフン(-)のみです。
    この ID は、CA APM ChangeDetector エージェントのグローバル ID に対応し、Enterprise Manager または Enterprise Manager クラスタに接続しているすべてのエージェントで一意である必要があります。
  3. ChangeDetector 対応の各エージェント インスタンスで
    introscopeAgent.profile
    を編集して、以下のようにファイル名を含めた構成ファイルのパスを設定します。
    introscope.changeDetector.profile=<
    path to ChangeDetector-config.xml>
    サンプル構成ファイルの名前を変更しないで使用している場合、ファイル名は
    ChangeDetector-config.xml
    です。名前を変更した場合は、その名前を指定します。
    パス名の入力には、絶対パス名と 2 つの円記号を使用します。たとえば、WebLogic アプリケーション サーバを参照する場合、プロパティ値に入力するパスは
    <ProductName_Home>\\<Agent_Home>
    のようになります。
負荷分散環境での CA APM ChangeDetector の設定
CA APM ChangeDetector エージェント拡張は、負荷分散されるエージェント環境で動作するように設定できます。このためには、CA APM ChangeDetector エージェント拡張対応のエージェントをマネージャ オブ マネージャ(MOM)に接続するように構成します。MOM は、weight プロパティ(
introscope.enterprisemanager.clustering.login.em1.weight
)の構成に応じて、エージェントの負荷を適切なコレクタに分散させます。
CD で負荷分散を行うように設定する方法
  • 以下のプロパティを設定して、ChangeDetector エージェントを MOM に接続します。
    agentManager.url.1=<MOM Host>:5001
  • 以下のプロパティを設定して、MOM での負荷分散を設定します。
    (コレクタ 1)
    introscope.enterprisemanager.clustering.login.em1.host=sqw32vserv12 introscope.enterprisemanager.clustering.login.em1.port=5001 introscope.enterprisemanager.clustering.login.em1.publickey=internal/server/EM.public introscope.enterprisemanager.clustering.login.em1.weight=50
    (コレクタ 2)
    introscope.enterprisemanager.clustering.login.em2.host=sqw32vserv10 introscope.enterprisemanager.clustering.login.em2.port=5002 introscope.enterprisemanager.clustering.login.em2.publickey=internal/server/EM.public introscope.enterprisemanager.clustering.login.em2.weight=50
詳細については、以下を参照してください。
CA APM ChangeDetector での エージェント フェールオーバ メカニズムの設定
CA APM ChangeDetector エージェント拡張がエージェント フェールオーバ メカニズムと組み合わせて機能するようにインストールされている場合は、以下の手順に従ってプライマリおよびフォールバックの Enterprise Manager コレクタを構成します。
フェールオーバ時に、CA APM ChangeDetector エージェント拡張は、フォールバック Enterprise Manager として指定されている Enterprise Manager に変更データを送信し始めます。ただし、フォールバック Enterprise Manager の変更データベース(changes.db)がプライマリ Enterprise Manager と同期されていない場合は、CA APM ChangeDetector はシャットダウンされます。ただし、CA Introscope エージェントの実行は継続され、CA APM ChangeDetector はプライマリ(デフォルト) Enterprise Manager が復帰するまで、プライマリ Enterprise Manager への送信を再試行します。
CA Introscope エージェントが直接 MOM に接続されている場合、変更はレポートされません。
CD で Agent フェールオーバ メカニズムを設定する方法
IntroscopeAgent.profile
で、以下のプロパティを設定します。
  • CA APM ChangeDetector 対応のエージェントに対して、プライマリ Enterprise Manager コレクタ(MOM ではない)を指定します。以下のプロパティを設定します。
    agentManager.url.1=<primary EM collector host>:<primary EM collector port>
  • MOM Enterprise Manager をフォールバック Enterprise Manager として指定します。以下のプロパティを設定します。
    agentManager.url.2=<MOM EM collector host>:<MOM EM collector port>
  • 以下のプロパティを設定して、再試行間隔を指定します。
    introscope.agent.enterprisemanager.failbackRetryIntervalInSeconds=<failover retry time in seconds>
.NET における個別の構成ファイルでの複数アプリケーションの実行
.NET の IIS で複数のアプリケーションを実行している場合に、各アプリケーションからの変更が個別にレポートされるようにするには、カンマで区切ったリストで各アプリケーション用の設定フォルダを特定する必要があります。各アプリケーションに、独自の ChangeDetector 設定フォルダが必要です。このフォルダに、各アプリケーション用の ChangeDetector 設定 XML を置きます。パスの最後のフォルダ名は、アプリケーションの名前(AppDomain FriendlyName)の一部に一致する必要があります。
たとえば、個別の設定フォルダを使用して BalloonShop および Petshop の変更を監視する場合は、
introscope.changeDetector.profileDir
を以下のように設定します。
introscope.changeDetector.profileDir=S:\sw\CA_Wily\wily_dotnet\Introscope<VersionNumber>\wily\CD-config\balloonshop,S:\sw\CA_Wily\wily_dotnet\Introscope<VersionNumber>\wily\CD-config\petshop
CA APM ChangeDetector の無効化
CA APM ChangeDetector を無効にする方法:
以下のプロパティを false に設定します。
introscope.changeDetector.enable=false
ChangeDetector エージェント ID の命名オプション
CA APM ChangeDetector エージェント ID は、インストールする各 CA APM ChangeDetector エージェント拡張で一意である必要があります。CA Introscope エージェントが 1 つのみの単純な環境では、CA APM ChangeDetector が自動的に割り当てる ID を使用してかまいません。
同一の CA Introscope エージェントで実行される複数の CA APM ChangeDetector エージェント拡張が同じ ID を持っている場合、2 番目に起動されるインスタンスはシャットオフされ、エラー メッセージが出力されます。
もっと複雑な環境では、別の方法で一意の ChangeDetector エージェント ID を取得できます。以下の状況に応じて、選択肢が異なります。
  • CA APM ChangeDetector 対応エージェントが複数あるかどうか
  • 各エージェントが固有のプロファイル ファイル(IntroscopeAgent.profile)を持っているか、または、すべてのエージェントが同じファイルを使用するか
  • CA APM ChangeDetector エージェント拡張に対して自動 ID 生成を使用するかどうか
  • CA APM ChangeDetector エージェント拡張の識別に、Java システム プロパティ、.NET 環境変数監視、またはエージェント プロパティを使用するかどうか
 
環境
推奨されるエージェント ID の設定
各 CA APM ChangeDetector 対応エージェントが、固有のディレクトリにある固有のエージェント プロファイルを使用する。
CA APM ChangeDetector の自動 ID 割り当てを使用します。この場合は、何もする必要はありません。
複数の CA APM ChangeDetector 対応エージェントが同じエージェント プロファイルを使用する。
Java 起動コマンドで、-D パラメータを使用して
introscope.changeDetector.agentID
プロパティを指定します。
Java コマンド ラインまたは
IntroscoptAgent.profile
で、使用可能な Java システム プロパティ、.NET 環境変数監視、またはエージェント プロファイルのプロパティに基づく式を使用して、実行時に解決します。
自動 ID 割り当ての使用
各 CA APM ChangeDetector 対応エージェントに 1 つの IntroscopeAgent.profile を使用している場合にのみ、自動 ID 割り当てを使用できます。
この場合、Java システム コマンドまたは
IntroscopeAgent.profile
ファイルで
introscope.changeDetector.agentID
プロパティが定義されていないと、CA APM ChangeDetector がこのプロパティ用の一意の値を生成します。生成された値は、CA APM ChangeDetector のルート ディレクトリの「.id」ファイルに保存されます。このファイルを削除または変更しないでください。
CA APM ChangeDetector のルート ディレクトリ(change_detector)は、デフォルトでは
IntroscopeAgent.profile
ファイルがあるディレクトリ内に作成されます。ただし、プロパティ
introscope.changeDetector.rootDir
で別のルート ディレクトリを指定できます。
-D Java システム パラメータによる ID の割り当て
CA APM ChangeDetector エージェント拡張の ID は、Java コマンド ラインでも定義できます。Java コマンド ラインで定義するには、以下の例で示すように、-D パラメータと
introscope.changeDetector.agentID
プロパティを一緒にして使用します。
java -Dintroscope.changeDetector.agentID=<value>
Java システム プロパティまたはエージェント プロファイル プロパティに基づく ID の割り当て
ChangeDetector エージェント ID は、Java システム プロパティまたはエージェント プロファイル プロパティに基づいて実行時に動的に割り当てることができます。この方法は、環境が複雑で、すでに別のプロパティを使用してさまざまなプロセスを区別している場合に使用します。
別のプロパティに基づいて ChangeDetector エージェント ID を割り当てる方法(オプション 1)
  • IntroscopeAgent.profile
    ファイルで、以下の例のようにエージェントID プロパティの式を入力します。prefix と suffix には、単純な定数文字列を指定します。
    introscope.changeDetector.agentID=<prefix>${any Java system property}<suffix> introscope.changeDetector.agentID=<prefix>${any Agent profile property}<suffix>
    prefix または suffix のどちらか、または両方を使用できます。
別のプロパティに基づいて ChangeDetector エージェント ID を割り当てる方法(オプション 2)
  • Java 起動コマンドで、以下の例のように、上記に似た式を使用します。prefix と suffix には、単純な定数文字列を指定します。
    java -Dintroscope.changeDetector.agentID=<prefix>${any Java system property}<suffix> java -Dintroscope.changeDetector.agentID=<prefix>${any Agent profile property}<suffix>
    prefix または suffix のどちらか、または両方を使用できます。
オプションの構成プロパティ
CA APM ChangeDetector には、CA Introscope エージェント、Workstation、および Enterprise Manager の構成ファイルで設定できるオプションのプロパティがあります。
オプションのエージェント プロパティ
以下のプロパティを、
IntroscopeAgent.profile
に設定します。
  • introscope.changeDetector.rootDir
    CA APM ChangeDetector のルート ディレクトリの場所を指定します。このディレクトリが存在しない場合は、作成される場所を指定します。指定しない場合、ルート ディレクトリはデフォルトで
    <Agent_Home>
    になります。
    注:
    CA APM ChangeDetector は、通常の処理に必要なファイルの作成にルート ディレクトリを使用するため、このディレクトリは削除しないでください。ルート ディレクトリの場所を定義するプロパティはオプションです。
  • introscope.changeDetector.compressEntries.enable
    この値を false に設定すると、データ圧縮が無効になります。true に設定すると、CA APM ChangeDetector のデータ バッファでのデータ圧縮を許可します。これは、起動時にメモリ消費が発生する場合に役立ちます。デフォルト値は
    true
    です。
    false
    に設定した場合、その設定を有効にするにはアプリケーションの再起動が必要です。
  • introscope.changeDetector.compressEntries.batchSize
    このプロパティは、
    introscope.changeDetector.compressEntries.enable
    プロパティと一緒に使用します。このプロパティは、圧縮ジョブのバッチ サイズを定義します。デフォルト値は 1000 です。
  • introscope.changeDetector.isengardStartupWaitTimeInSec
    このプロパティは、デフォルトで有効になっています。このプロパティでは、エージェントが起動してから Enterprise Manager への接続を試行するまでの待ち時間を秒単位で指定できます。デフォルト値は 15 です。
  • introscope.changeDetector.waitTimeBetweenReconnectInSec
    このプロパティは、デフォルトで有効になっています。このプロパティでは、エージェントが Enterprise Manager への再接続を試行するまでの待ち時間を秒単位で指定できます。デフォルト値は 10 です。
オプションの Workstation プロパティ
以下のプロパティは、
IntroscopeWorkstation.properties
で設定できます。
  • introscope.changeDetector.defaultDataWindowValue=<value>
    Investigator でライブ データを表示する期間を指定します。このプロパティは、ライブ データを表示する時間単位を指定する
    defaultDataWindowUnit
    プロパティと共に使用します。デフォルト値は 1 です。
  • introscope.changeDetector.defaultDataWindowUnit=<
    value>
    Investigator でライブ データを表示する時間単位を指定します。このプロパティは、
    defaultDataWindowValue
    プロパティと共に使用します。このプロパティの有効な値は、
    seconds
    minutes
    hours
    days
    weeks
    、および
    months
    です。デフォルト値は
    weeks
    です。days(日)または months(月)を指定した場合に使用される実際の開始日は、ロケールによって異なります。たとえば、週が日曜に始まるロケールと、月曜に始まるロケールがあります。
  • introscope.changeDetector.useChangeTime=
    false
    デフォルトでは、CA APM ChangeDetector はファイル変更の検出時刻を表示しますが、変更時刻は表示しません。検出時刻と変更時刻の両方を表示するには、このプロパティを
    true
    に設定します。このプロパティは、ファイル変更にのみ適用されます。システム プロパティ、環境変数、データベース、または Java クラスの変更には適用されません。
CA APM ChangeDetector のデータを送信するための EPAgent プラグインの設定
Java プラットフォームの場合、EPAgent プラグインまたは拡張に対して CA APM ChangeDetector を使用するには、EPAgent を設定します。
CA APM ChangeDetector は、STDOUT に出力された XML を使用してデータを Enterprise Manager に送信するため、EPAgent データは CA APM ChangeDetector が処理できる形式にする必要があります。ChangeDetector XML を STDOUT に出力する場合、データは 1 行にする必要があります(上記のサンプル XML は読みやすいように複数行になっています)。STDOUT に 1 行で出力すると、以下のようになります。
<changeData dataSource="dataSource name"><resource name="resource1" value="resource1 value"/><resource name="resource2" value="resource2 value"/></changeData>
<changeData dataSource="dataSource name"> <resource name="resource1" value="resource1 value"/> <resource name="resource2" value="resource2 value"/> </changeData>
 
各 changeData エレメントには、dataSource 属性が定義されている必要があります。CA Introscope Workstation で CA APM ChangeDetector のデータを表示する場合、この属性で定義された名前が表示されます。各 changeData エレメントは、特定のデータソースにリンクしています。複数のデータソースに関する CA APM ChangeDetector のデータをレポートする場合は、各 changeData エレメントを別の行に出力する必要があります。
changeData エレメントには、リソース エレメントをいくつでも含めることができます。各リソース エレメントには、属性を 2 つ定義する必要があります。1 つ目の name 属性はレポート対象のリソース名に対応し、2 つ目の value 属性はレポート対象のリソースの現在値に対応します。
changeData エレメントを出力するたびに、すべての既知のリソースの現在の状態を含める必要があります。
  • 同じデータソースで、前回 changeData エレメントを出力したときに含まれていなかったリソースを含めると、そのリソースはシステムに追加されたと判断されます。
  • リソースの value 属性が、2 回のイタレーション間で変化した場合、そのリソースは変更されたと判断されます。
  • 同じデータソースで、前回 changeData エレメントを出力したときに含まれていたリソースを含めないと、そのリソースはシステムから削除されたと判断されます。
オプションの Enterprise Manager プロパティ
以下のプロパティは、
IntroscopeEnterpriseManager.properties
で設定できます。
  • introscope.changeDetector.storage.purge.maxDataAgeInDays=<
    value>
    変更が保存される最大経過期間を日数で指定します。この期間が過ぎると、変更はデータ ストアから削除されます。デフォルト値は 90 です。
  • introscope.changeDetector.storage.purge.offsetHour=<
    value>
    パージが有効にされている場合に、パージが行われる時刻を指定します。指定しない場合は、デフォルトで 4(午前 4 時)に設定されます。
  • introscope.changeDetector.storage.perst.dbfile=<
    path to storage file>
    ChangeDetector データに使用されるストレージ ファイルの場所を指定します。相対パスと完全パスのどちらでも指定できます。デフォルトは、
    {$EM_INSTALL}/data/changes.db
    です。
  • introscope.changeDetector.jdbc.maxNumRows=<
    value>
    SQL クエリで処理できる最大行数を指定します。実行されたクエリは、Enterprise Manager にレポートされたすべての変更を行形式で返します。変更は
    changes.db
    ファイルからレポートされます。デフォルト値は 10000 です。