すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:カスタム設定

最終更新日:Sep 08, 2026

[カスタム設定] タブでは、エージェント機能スイッチやサンプリングポリシーなどの一般的な設定を調整できます。

説明

API を使用してこれらの設定を調整する場合は、「SaveTraceAppConfig」をご参照ください。

前提条件

お使いのアプリケーションにエージェントがインストールされています。詳細については、「アプリケーション監視統合の概要」をご参照ください。

手順

  1. ARMS コンソールにログインします。 左側のナビゲーションウィンドウで、[アプリケーション監視] > [アプリケーションリスト] を選択します。

  2. [アプリケーション一覧] ページの上部で、宛先リージョンを選択し、対象のアプリケーションをクリックします。

    説明

    [言語] 列のアイコンは、以下のとおりです。

    Java icon: Application Monitoring に接続された Java アプリケーション。

    image: Application Monitoring で監視される Go アプリケーション。

    image: Application Monitoring で監視される Python アプリケーション。

    [-]: Managed Service for OpenTelemetry と統合されたアプリケーション。

  3. 左側のナビゲーションペインで、アプリケーションの設定 をクリックし、次に カスタム設定 タブをクリックします。

  4. カスタム設定パラメーターを設定し、ページ下部の保存をクリックします。

サンプリングレートの設定

ARMS Pro Edition

[サンプリングレート設定] セクションでは、サンプリングポリシーを設定し、トレースをサンプリングするインターフェイスを指定できます。 詳細については、「トレースサンプリングモードを選択する (エージェントバージョン 3.2.8 より前の場合)」をご参照ください。

説明

トレースサンプリングレートは、スロットリングしきい値よりも優先されます。

次のパラメータを設定できます。[サンプリングレートモード] (固定サンプリングレートをサポートしており、エージェント v2.8.3 以降が必要です)、[サンプリングレートの設定] (デフォルト: Java および Go アプリケーションは 10、Python アプリケーションは 100)、[サンプリング対象インターフェース] (特定のインターフェースの選択をサポートしており、エージェント v3.2.0 以降が必要です)、およびサンプリング対象インターフェースのプレフィックスとサフィックス。

ARMS Basic Edition

ARMS ベーシック版は、クライアント側のサンプリングポリシーをサポートしており、収集されたデータ行数に基づいて課金されます。デフォルトでは、ARMS は各エージェントの各インターフェースに対して、1 分あたり 1 つのトレースを無料で収集します。また、クライアントサンプリングポリシーの追加 をクリックして、カスタムサンプリングポリシーを追加することもできます。

パラメータ

説明

[Policy Name]

サンプリングポリシーのカスタム名。

[Sampling Type]と[サンプリング値]

  • [固定比率サンプリング]: 固定の割合に基づいてトレースをサンプリングします。このオプションを選択した場合は、サンプリング値 を 10% などの固定のパーセンテージに設定します。

  • [フロークォータ]:このオプションを選択した場合、サンプリング値 を、指定された時間枠内に各エージェントが収集するトレース数に設定します。 たとえば、エージェントあたり 1 秒ごとに 5 トレースという設定は、各エージェントが毎秒最大 5 つのトレースを収集することを意味します。

[適用インターフェイス]

サンプリングポリシーの適用範囲を指定します。各インターフェース を選択するか、指定のインターフェース を選択してインターフェース名を入力できます。

説明

現在、各サンプリングポリシーは 1 つのインターフェース名のみをサポートしています。複数のインターフェースのトレースをサンプリングするには、複数のサンプリングポリシーを設定する必要があります。

サンプリングポリシーを設定した後、コンソールでそれらを有効化または無効化できます。複数のサンプリングポリシーを同時に有効にできます。優先順位は次のとおりです。デフォルトサンプリング (無料) > 単一インターフェースのフロー制限 > 単一インターフェースの固定割合サンプリング > すべてのインターフェースのフロー制限 > すべてのインターフェースの固定割合サンプリング。既存のサンプリングポリシーを編集したり、不要になったポリシーを削除したりすることもできます。

この機能には、エージェント v2.7.1.3 以降が必要です。ポリシーリストは、ポリシー名、適用範囲、フロー制限、固定割合サンプリング、有効ステータス、アクションなどの列を含むテーブルに表示されます。

エージェントスイッチとログレベル

Agent Switch Settings セクションでは、メインエージェントスイッチと個々のプラグインスイッチを有効化または無効化し、ログレベルを設定できます。

重要

メインエージェントスイッチとログレベルの変更は、アプリケーションを再起動せずにすぐに有効になります。メインエージェントスイッチを無効化すると、システムはアプリケーションを監視できなくなります。慎重に操作してください。プラグインスイッチの変更を適用するには、アプリケーションを手動で再起動する必要があります。

サポートされているプラグインスイッチには、dubbo-plugin、mongodb-plugin、ali-hsf-plugin、httpclient3-plugin、httpclient4-plugin、jdk-http-plugin、jetty-plugin、mybatis-plugin、mysql-plugin、okhttp-plugin、oracle-plugin、postgresql-plugin、redis-plugin、spring-plugin、springboot-plugin、tomcat-plugin、lettuce-plugin、grpc-plugin、thrift-plugin、google-httpclient-plugin、hystrix-plugin、rxjava-plugin があります。デフォルトのログレベルは WARN です。

しきい値の設定

しきい値の設定 セクションでは、低速 SQL クエリのしきい値を設定できます。

スロー SQL クエリのしきい値はミリ秒 (ms) 単位で、デフォルトは 500 ms です。SQL クエリの実行時間がこのしきい値を超えると、スロー SQL クエリと見なされます。

メッセージキュー設定

メッセージキュー設定 セクションでは、メッセージ関連のパラメーターを設定できます。

[カスタム RabbitMQ コンシューマー] および [カスタム Kafka 消費方法] 設定には、エージェント v4.x 以降が必要で、アプリケーションを再起動した後に有効になります。[Kafka メッセージのコンテキスト自動伝播] 設定は、Kafka v0.11.0 以降でのみサポートされます。

  • [カスタム RabbitMQ コンシューマー]: カスタムコンシューマーのクラス名、または匿名内部コンシューマーを含むクラスを指定して、そのコンシューマーのトレースを表示します。複数のコンシューマークラス名はカンマ (、) で区切ります。

  • [カスタム Kafka 消費方法]: カスタム消費方法を定義して、ネイティブ Kafka SDK でメッセージを消費する際のトレースとメトリクスを表示します。

  • [Kafka メッセージのコンテキスト自動伝播]: メッセージを送信する際に、Kafka メッセージにヘッダーを自動的に追加して、プロデューサーとコンシューマーのトレースを関連付けます。

エージェント収集設定

[トレースの収集] 設定には、エージェント v4.2.0 以降が必要です。[エージェント最大 QPS しきい値] のデフォルトは 10,000 で、エージェント v4.1.10 以降が必要です。デフォルトの [ログレベル] は WARN です。

  • [トレースの収集]: トレースデータをレポートするかどうかを制御します。デフォルトで有効になっています。無効化すると、トレースデータはレポートされなくなります。

  • [スロットリングしきい値]: エージェントが 1 秒あたりに処理できるリクエストの最大数。デフォルトは 100 です。このしきい値を超えるリクエストのトレースは収集されません。

    説明

    トレースサンプリングレートは、スロットリングしきい値よりも優先されます。

  • [エージェント最大 QPS しきい値]: エージェントが 1 秒あたりに処理できるリクエスト数。パフォーマンス上の理由から、有効なしきい値は設定されたしきい値から最大 5% 逸脱する場合があります。このしきい値を超えるリクエストは監視されません。つまり、スパンやメトリクスは生成されず、ログとトレース ID の関連付けも機能しません。

  • [エントリポイントのない内部呼び出しのデータ収集]: エントリポイントのない内部呼び出しとは、通常、HTTP リクエストの送信、データベースとのやり取り、メッセージの送信、または JDK スレッドプールを通じて開始される RPC 呼び出しを行うスケジュールされたタスクによって生成されるスパンおよびメトリクスデータを指します。

  • [ログレベル]: トラブルシューティングのためにエージェントのログレベルを調整します。

API 呼び出し設定

  • [インターフェース応答時間しきい値]: インターフェースの応答時間がこのしきい値を超えると、システムはそのインターフェースをスロー呼び出しとしてマークします。

  • [例外フィルタリング]: ここに入力した例外は、ARMS はアプリケーション詳細ページおよび例外分析ページのチャートに表示しません。

  • [親クラスの例外フィルターの継承]: このオプションを有効化し、収集された例外が 例外フィルターの許可リスト で設定された例外クラスのサブクラスである場合、ARMS はそれもフィルタリングします。

    その結果、フィルタリング条件を満たす例外は ARMS コンソールに表示されません。

  • [エラーカウントフィルタリング]: デフォルトでは、ARMS は 400 を超えるステータスコードをエラーとしてカウントします。400 を超える HTTP ステータスコードのうち、エラーとしてカウントしないものをカスタマイズできます。

  • [不要なインターフェース呼び出しのフィルタリング]:監視が不要なインターフェースを入力します。エージェントはこれらのインターフェースの可観測性データを報告しないため、インターフェース呼び出しページでは非表示になります。

  • [メトリクスに上流インターフェース名を記録] および [メトリクスに上流アプリケーション名を記録]:

    インターフェースメトリクスが、現在のインターフェースを呼び出す上流アプリケーションおよびインターフェースを記録するかどうかを制御します。これは主に、サービス依存関係の上流および下流データが利用可能かどうかに影響します。アプリケーションに多くの上流呼び出し元がある場合、この情報を記録すると、レポートされるメトリクスの量と関連コストが大幅に増加する可能性があります。

  • [メトリクスに元のステータスコードを記録]: HTTP インターフェース関連のメトリクスに元の応答コードを記録します。

プール監視設定

[スレッドプールおよび接続プールモニタリング] 設定には、エージェント v2.7.3.5 以降が必要で、アプリケーションを再起動した後に有効になります。[スレッドプールのスレッド名パターン抽出ポリシー] 設定には、エージェント v4.1.10 以降が必要です。

  • [スレッドプールとコネクションプールのモニタリング]: Tomcat、Dubbo、High-speed Service Framework (HSF) などのフレームワークにおけるスレッドプールのメトリクスモニタリングをサポートします。最新のエージェントバージョンへのアップグレードが必要です。

  • スレッドプールのスレッド名パターン抽出ポリシー: デフォルトでは、この機能はスレッドプールで実行中の任意のスレッドのスレッド名に含まれるすべての数字を * に置き換えます。 これを調整して、スレッド名の末尾の文字のみを * に置き換えることもできます。 アプリケーションが異なるポートでリッスンする複数の Dubbo プロバイダーを起動する場合、抽出されたスレッド名テンプレートが同一になるため、デフォルトのポリシーではそれらのスレッドプールが 1 つに集約される可能性があります。 このような場合は、ポリシーを調整して、それらを個別のスレッドプールとして区別します。

  • [スレッドプール使用シナリオによるフィルタリング] および [スレッドプール名パターンによるフィルタリング]: 使用シナリオとスレッド名パターンに基づいて、特定のスレッドプールの監視メトリクスをフィルタリングします。

    説明

    この設定は、Java エージェント v4.2.0 以降でのみ有効になります。

    • スレッドプール使用シナリオ: スレッドが使用されるコンテキスト。サポートされているシナリオには、Tomcat、Vert.x、Undertow、Dubbo、Jetty、AliyunJavaAgent、および default があります。AliyunJavaAgent はエージェントが使用するスレッドプールを表し、default は他の分類されていないスレッドプールを表します。

    • スレッドプール名パターン: プール内のスレッド名を処理して得られるパターン。たとえば、http-nio-*-exec-*** は通常、実際のスレッド名の数値部分を ***** に置き換えることで取得します。

スパン属性設定

次の設定には、いずれもエージェント v4.x 以降が必要です。[OpenTelemetry 仕様属性の記録] は、デフォルトで無効になっています。[スパンのアプリケーションタグ関連付け] 設定のデフォルトは [すべてのスパン] です。

  • [OpenTelemetry 仕様属性の記録]: OpenTelemetry 仕様では、各プラグインタイプによって生成されるスパンに含める属性が定義されています。データ量を削減するため、ARMS エージェントはデフォルトでこれらの属性を記録しません。必要に応じて、この設定を有効化できます。この設定を有効化した後、各フレームワークに追加される属性の詳細については、OpenTelemetry 仕様をご参照ください。

  • [スパンのアプリケーションタグ関連付け]: コンソールのアプリケーションリストページでアプリケーションにバインドしたタグを含めるスパンを制御します。デフォルトでは、すべてのスパンにアプリケーションタグが含まれます。データ使用量を管理するために、エントリスパンにのみアプリケーションタグをアタッチすることを選択できます。エントリスパンには通常、HTTP Server、RPC Server、MQ のメッセージ消費、およびスケジュールされたタスクが含まれます。

詳細設定

  • [最大メソッドスタック長]: デフォルトは 128、最大は 400 です。

  • [例外を区別するためのスタック深度]: この設定は、同一タイプの例外を区別するためのスタック深度を指定します。通常、最初に異なる呼び出しの深度に設定されます。

  • [最大 SQL 長]: デフォルトは 1,024 文字、最小は 256、最大は 4,096 です。

  • [SQL バインド値の収集]: PreparedStatement のパラメーターにバインドされた変数の値をキャプチャします。この機能はアプリケーションを再起動することなく有効になり、現在は PreparedStatement で SQL 変数値を設定するシナリオのみをサポートしています。

  • [元の SQL 文]: 追加の処理は行わず、SQL 文を切り捨てるだけです。

  • [MySQL クエリ戻り値サイズの記録]: 有効化すると、ARMS は MySQL クエリの戻り値のサイズを記録します。

  • [新しいトレースストレージ形式]: トレースの時間ベースのソートをサポートする新しいストレージ形式です (デフォルトで有効)。

  • [トレース圧縮]: for ループ内などの繰り返し呼び出しを折りたたむことで、トレースを簡素化します。この設定はアプリケーションを再起動しなくても有効になります。

  • [リクエストパラメーターの最大長]:デフォルトは 512 文字で、サポートされる最大長は 2,048 文字です。

  • [クォンタイル統計]: クォンタイル統計機能を有効にします。

    説明

    分位数とは、確率変数の確率分布の範囲を等確率の連続区間に分割するポイントです。一般的な分位数には、中央値 (2 分位数)、四分位数、パーセンタイルがあります。

  • [自動非同期伝播]:非同期タスクがスレッドプールにサブミットされると、非同期コンテキストを自動的に伝播します。

  • [非同期伝播のスキャン対象パッケージ]: スキャンするパッケージを追加して、非同期タスクのモニタリングを有効にします。スキャンされたパッケージで Runnable、Callable、または Supplier インターフェイスを実装する新しいオブジェクトが作成されると、エージェントは現在のスレッドのトレースコンテキストを自動的にキャプチャします。非同期スレッドが実行されると、このコンテキストを使用してトレースリンケージを完了します。エージェント v2.7.1.3 以降が必要です。

  • [レスポンスでトレース ID を返す]: HTTP リクエストの場合にのみ、この設定によってレスポンスヘッダーに eagleeye-traceid フィールドが追加されます。

スレッド設定

Thread settings セクションでは、スレッド分析のメインスイッチを有効化または無効化できます。

説明

この機能は、ARMS Pro Edition でのみ利用できます。

エージェント v4.x 以降、実装の変更により、この機能は継続的プロファイリングの CPU ホットスポットスイッチによって制御されます。

ログ関連付け設定

アプリケーションログの関連付け設定 セクションでは、アプリケーションに関連付けられたログソース情報を設定できます。詳細については、「ログ分析」をご参照ください。

説明

この機能は、ARMS Pro Edition でのみ利用できます。

対応する Project および Logstore を設定することで、ログを Log Service (SLS) と関連付けることができます。また、ログに基づくエラーカウント、カスタムタグ関連付け、およびログパスを設定することもできます。

URL 収束ルール

URL 収束設定 セクションでは、URL 集約機能を有効化または無効化し、そのしきい値とルールを設定できます。 URL 集約は、類似した URL をグループ化して単一の項目として表示する機能です。 たとえば、/service/demo/ で始まる一連の URL をグループ化できます。 集約のしきい値は、集約がトリガーされる URL の最小数です。 たとえば、しきい値が 100 の場合、システムはルールの正規表現に一致する URL の数が 100 に達した場合にのみ、それらの URL を集約します。

説明

URL 収束ルールは、現在、ARMS Java エージェントでのみサポートされています。ARMS Python エージェントは、この設定をまだサポートしていません。

デフォルトの収束のしきい値は 1,000 です。正規表現に一致する URL の数がこのしきい値を超えると、収束が発生します。収束ルールは正規表現をサポートしており、複数のルールはコンマ (,) で区切ります。たとえば、/service/(*?)/demo です。

Arthas モニタリング

Arthas の監視 セクションでは、Arthas 診断機能を有効化または無効化し、それが有効になっている IP アドレスを指定できます。 詳細については、「Arthas 診断」をご参照ください。

説明

この機能は、ARMS Pro Edition でのみ利用できます。

この機能には、エージェント v2.7.1.3 以降が必要です。Arthas 診断を有効化する IP アドレスを指定できます。IP アドレスを指定すると、その機能はそれらの IP アドレスに対してのみ有効になります。IP アドレスを指定しない場合、その機能はすべての IP アドレスに対して有効になります。

継続的プロファイリング

[継続的プロファイリング] セクションでは、メインスイッチ、および CPU ホットスポット、メモリホットスポット、コードホットスポット機能のスイッチを有効化または無効化できます。 また、これらの機能が有効になる IP アドレスまたはネットワークセグメントを指定することもできます。 詳細については、「継続的プロファイリング機能を統合する」をご参照ください。 IP 許可リストは、コンマ (,) で区切られた複数のインスタンス IP アドレスをサポートしています。 ネットワークセグメント許可リストは CIDR 形式 (たとえば、10.0.0.0/8) をサポートしていますが、複数のセグメントはサポートしていません。

トレース伝播プロトコル設定

[トレース伝播プロトコル設定] セクションでは、必要に応じて使用するトレース伝播プロトコルを選択できます。 詳細については、「ARMS でサポートされているトレースコンテキスト伝播プロトコル」をご参照ください。

デフォルトでは、[伝播プロトコル] は設定されておらず、[伝播モード] は [優先] です。この機能には、エージェント v4.1.x 以降が必要です。

デフォルトでは、呼び出しが到着すると、ARMS エージェントは次の順序でリクエストヘッダーをチェックします: EagleEye、OpenTelemetry、SkyWalking、Jaeger、Zipkin。エージェントが特定のプロトコルのヘッダーを検出すると、そのプロトコルに基づいてトレースコンテキストを復元し、後続の下流呼び出しに対応するヘッダーを挿入します。プロトコルヘッダーが検出されない場合、エージェントはデフォルトで EagleEye プロトコルを使用します。

このページで任意のプロトコルを優先プロトコルとして選択できます。設定を選択して保存すると、ARMS は最初に指定されたプロトコルのリクエストヘッダーをチェックします。たとえば、[伝播プロトコル] を [Jaeger] に、[伝播モード] を [優先] に設定すると、ARMS エージェントは検出順序を Jaeger、EagleEye、OpenTelemetry、SkyWalking、Zipkin に変更します。

特定のプロトコルの使用を強制することもできます。たとえば、[伝播プロトコル] を [Jaeger] に、[伝播モード] を [強制] に設定すると、ARMS エージェントは Jaeger プロトコルヘッダーのみをチェックします。Jaeger プロトコルヘッダーが見つからない場合、エージェントは他のプロトコルをチェックせず、代わりに新しいトレースコンテキストを生成します。

データマスキング

[データマスキング] セクションで、マスキングルールを定義できます。 エージェントは収集時に、JVM システムパラメーター、Kubernetes YAML、メソッドの入力パラメーター、および Arthas の環境変数とシステム変数のコンテンツをマスキングします。 マスキングルールでは、要素はコンマ (,) で区切られます。 各要素は、大文字と小文字を区別しない正規表現を表します。 たとえば、ルール password は正規表現 .*password.* に相当します。 デフォルトのマスキングルールには、password、secret、key、token、および credentials が含まれます。

エージェントは、データを収集する際に、対応する式に基づいてデータキーをフィルタリングします。キーが条件に一致した場合、機密データが含まれていると見なされ、非表示化されます。たとえば、非表示化ルールに licenseKey が含まれている場合、キーが -Darms.licenseKey の情報は非表示化されます。非表示化ルールが licenseKey の場合、キーが -Darms.licenseKey の情報が非表示化されます。

設定のコピー

同じ設定を他のアプリケーションに適用する必要がある場合は、それらをコピーできます。

単一の設定を他のアプリケーションにコピー

  1. 対応する設定セクションで、他のアプリケーションへの一括コピー をクリックします。

  2. 表示されたダイアログボックスで、設定を適用するアプリケーションを選択し、確定する をクリックします。

    ダイアログボックスには、[他のすべてのアプリケーションにコピー] と [監視対象アプリケーションを選択] の 2 つのモードがあります。コピーが成功すると、変更が有効になるまで 1~2 分かかります。

すべての設定を他のアプリケーションにコピー

  1. ページの下部にある他のアプリケーションへの一括コピーをクリックします。

  2. 表示されたダイアログボックスで、設定を適用するアプリケーションを選択し、確定する をクリックします。

    ダイアログボックスには、[他のすべてのアプリケーションにコピー] と [監視対象アプリケーションを選択] の 2 つのモードがあります。コピーが成功すると、変更が有効になるまで 1~2 分かかります。

グローバルデフォルト設定

現在の設定をグローバルなデフォルト設定として保存できます。作成する新しいアプリケーションは、デフォルトでこれらの設定を使用します。

  1. ページの下部で、このアプリケーション設定をグローバルデフォルト設定として保存する をクリックします。

  2. 表示されるダイアログボックスで、確認 をクリックします。