前のトピック: SmartStor メタデータの廃棄次のトピック: 例: test_regex コマンドを使用した SmartStor データ問題の検出


SmartStor データおよびメタデータの削除

余分な SmartStor データおよびメタデータを削除するには、SmartStor ツールを使用します。

重要: SmartStor ツールを実行する場合は、Enterprise Manager をシャットダウンします。 Enterprise Manager は実行中に SmartStor データを作成するため、ユーザが SmartStor ツールを使用すると、予測できない結果になる場合があります。

SmartStor データの問題を特定する方法の例については、「例: test_regex コマンドを使用した SmartStor データ問題の検出」を参照してください。 また、「CA APM Java Agent 実装ガイド」または「.NET Agent 実装ガイド」でメトリック急増に関するトピックを参照してください。

以下の手順に従います。

  1. Enterprise Manager をシャットダウンします。
  2. コマンド プロンプトから、test_regex コマンドを実行し、現在のメトリック リストを表示します。

    たとえば、Introscope が <EM_Home> ディレクトリ内にインストールされていて、SmartStor が <EM_Home>¥data ディレクトリにデータを保存するよう構成されている場合は、以下のコマンドを実行します。

    SmartStorTools.sh test_regex -metrics <エージェントの正規表現> -src ../data

    例: SmartStorTools.sh test_regex -metrics ".*" -src ../data

    この結果、ホスト名、エージェント名、メトリック名、およびメトリック ID が含まれた完全修飾メトリック名のリストが表示されます。 行の総数からメトリックの総数を判断できます。 ただし、行数は、Investigator のサポータビリティ メトリックから取得するメトリック数ほど正確ではありません。

    エージェント名やメトリック名と一致する具体的な正規表現を使用し、その結果の行数を数えることで、スペースの大部分を占めているメトリックの種類を把握できます。 これは、不要なメトリックや削除対象のメトリックを特定する際にも役立ちます。

  3. メトリックのリストから、特定のエージェント内にある削除対象のメトリックを選択します。
  4. SmartStor ツール remove_metrics コマンドを実行し、余分なメトリックのセットを削除します。

    たとえば、SQL メトリック数が多い場合は、以下のコマンドを使用して、SQL メトリックをすべて削除します。

    <EM_Home>¥tools>SmartStorTools.bat remove_metrics
    -dest c:¥sql_metrics_removed -metrics ".*SQL.*" -src <EM_Home>¥data
    

    コマンドが正常に実行されると、対象ディレクトリ内の SQL メトリックが削除され、それ以外のメトリックはすべて残り、ソース ディレクトリにはすべてのメトリックがそのまま残ります。

    注: このコマンドを実行するには、元のデータ(-src オプションによって指定されたデータ)が占めているスペースとほぼ同じ容量(数 GB 縮小します)のターゲット スペースが必要です。 上記の例では、SQL メトリックのない新しいデータ(-dest オプションによって指定されたデータ)は、c:¥sql_metrics_removed ディレクトリにあります。

    このコマンドは実行時間の長いオペレーションで、数時間かかる場合もあります。

  5. 必要に応じて、余分なメトリックの別のセットに対して remove_metrics コマンドを繰り返してください。

    ソケットも、メトリック リークの一般的な発生源です。 remove_metrics コマンドを実行した後は、以下のコマンドを使用して、ソケット メトリックを削除してください。

    <EM_Home>¥tools>SmartStorTools.bat remove_metrics
    -dest c:¥sql_and_sockets__metrics_removed -metrics ".*Sockets.*"
    -src c:¥sql_metrics_removed

    このコマンドでは、ソース データとして、SQL メトリックを削除した最初のコマンドによって取得されたデータ(c:¥sql_metrics_removed ディレクトリ内のデータ)を使用します。 その後、SQL メトリックおよびソケット メトリックの両方が削除されたデータは、-dest オプション: c:¥sql_and_sockets__metrics_removed によって指定された場所に保存されます。 この場合も、このコマンドを実行するには、元のデータとほぼ同じ容量の予備スペースが必要です。

  6. メトリックの数を減らした後に、任意のバックアップ メタデータ ファイルを <EM_Home>¥data ディレクトリからバックアップ ディレクトリに移動します。

    Enterprise Manager は自動的に最大のメタデータ ファイルを使用します。これは定義されたメトリックが最も多いファイルです。 メトリックを減らすと、バックアップ メタデータ ファイルが現在のデータ ファイルよりも大きくなる可能性があります。

  7. クリーンになったメトリック データおよびメタデータのメトリック データ値を確認します。
    1. <EM_Home>¥config ディレクトリの apm-events-thresholds-config.xml ファイルを開きます。
    2. 現在のプロパティ設定をメモに書きとめてから、プロパティ introscope.enterprisemanager.metrics.historical.limit=500000 を設定します。
    3. ファイルを保存して閉じます。
    4. <EM_Home>¥config ディレクトリの IntroscopeEnterpriseManager.properties ファイルを開きます。
    5. 現在の設定をメモに書きとめてから、プロパティ introscope.enterprisemanager.smartstor.directory= がメトリック削除用の対象場所を指すよう設定します。

      たとえば、対象場所を c:¥sql_and_sockets__metrics_removed と仮定します。 この場合、プロパティ設定は introscope.enterprisemanager.smartstor.directory=c:¥sql_and_sockets__metrics_removed になります。

    6. ファイルを保存して閉じます。
    7. Enterprise Manager を再起動します。
    8. 以下のメトリックの値を確認します。
      Enterprise Manager | Data Store | SmartStor | Metadata | Metrics with Data

      値は、元の値よりもかなり小さくなっているはずです。 そうでない場合は、不要なエージェント名またはメトリック名に対して適切な SmartStor ツール コマンドを使用して、削除手順を繰り返してください。 履歴メトリック数が 300 K 未満になれば、Enterprise Manager は効率よく実行されます。

  8. 必要に応じて、変更したプロパティ値を元の設定にリセットします。
    1. <EM_Home>¥config ディレクトリの apm-events-thresholds-config.xml ファイルを開きます。
    2. introscope.enterprisemanager.metrics.historical.limit プロパティを元の設定にリセットします。
    3. ファイルを保存して閉じます。
    4. Enterprise Manager をシャットダウンします。
    5. <EM_Home>¥config ディレクトリの IntroscopeEnterpriseManager.properties ファイルを開きます。
    6. introscope.enterprisemanager.smartstor.directory プロパティを元の設定にリセットします。
    7. ファイルを保存して閉じます。
    8. Enterprise Manager を再起動します。