Download PDF
Download page .NETエージェントの構成プロパティ.
.NETエージェントの構成プロパティ
このページでは、エージェントの config.xml
ファイルに設定する .NET エージェントの構成プロパティについて説明します。これらのプロパティの一部は、Windows システム環境変数を使用して設定できます。詳細については、.NETエージェント環境変数を参照してください。ファイルを編集して変更を適用する方法については、「.NETエージェントの管理」を参照してください。
Environment Variables Reference
ノード、ティア、およびアプリケーション名には、エージェントの config.xml ファイルの環境変数を使用できます。環境変数を追加するには、他の文字と組み合わせができる %<variable>%,
を指定して参照します。たとえば、Web-%COMPUTERNAME"
は Web-HOST23
に変換されます。
AppDynamicsエージェントエレメント
appdynamics-agent
エレメントは、config.xml 内の構成用ルートコンテナエレメントです。
必須エレメント:
<appdynamics-agent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
コントローラエレメント
controller
エレメントは、appdynamics-agent
エレメントの子エレメントです。これにより、AppDynamics コントローラの接続情報を指定します。
The .NET Agent構成ユーティリティは、1 台のサーバにつき 1 つのコントローラの構成のみをサポートしています。
必須エレメント:
<controller host="mycontroller.mycompany.com" port="8090" ssl="false" enable_tls12="false" high_availability="false" secure="false" enable_config_deployment="true"
コントローラホスト属性
controller host
属性は、AppDynamics コントローラのホスト名または IP アドレスを示します。オンプレミスのコントローラの場合、コントローラをインストールした時に構成したアプリケーションサーバーホスト名の値を使用します。AppDynamics SaaSコントローラサービスを使用する場合、AppDynamicsからのWelcomeメールを参照してください。
タイプ:文字列
デフォルト:なし
要否:要
環境変数:APPDYNAMICS.CONTROLLER.HOSTNAME
コントローラポート属性
controller port
属性は、AppDynamics コントローラの HTTP または HTTPS ポートを示します。controller
SSL 属性が true
に設定されている場合はコントローラの HTTPS ポートを指定し、それ以外の場合は HTTP ポートを指定します。
タイプ:正の整数
デフォルト:8090
- オンプレミスのインストールの場合、HTTPのデフォルトはポート8090、HTTPSのデフォルトはポート8181です。
- SaaSコントローラの場合、HTTPに80またはHTTPSに443を使用。
要否: 要
環境変数:APPDYNAMICS.CONTROLLER.PORT
コントローラSSL属性
エージェントとコントローラ間で SSL による暗号化を有効にするには、コントローラ ssl
属性を true に設定します。
タイプ:ブール型
デフォルト:false
要否:いいえ
環境変数:APPDYNAMICS.CONTROLLER.SSL.ENABLED
コントローラ enable TLS 1.2 属性
SSL を有効化すると、エージェントはアプリケーションで ServicePointManager.SecurityProtocol
に設定されたプロトコルを使用してコントローラへの通信を保護します。コントローラ enable TLS 1.2
属性を true
に設定し、TLS 1.2 をプロトコルリストの最初のオプションとして追加。これはAppDynamicsコントローラへのリクエストだけでなく、アプリケーションからの安全な通信すべてに影響。
タイプ:ブール型
デフォルト:false
要否:いいえ
コントローラ高可用性属性
コントローラを高可用性に設定した場合、コントローラ high availability
属性を true
に設定します。
タイプ:ブール型
デフォルト:false
要否:いいえ
コントローラsecure属性
ログイン情報を暗号化するように .NET エージェントを設定すると、MSI インストーラパッケージは自動的に controller secure
属性を true
に設定します。controller secure
が true
の場合、.NET エージェントはアカウントエレメントまたはプロキシエレメントのログイン情報を無視して、Windows 資格情報ストアのログイン情報を使用します。次を参照してください。.NETエージェント構成の認証情報の暗号化
タイプ:ブール型
デフォルト:false
要否:いいえ
コントローラが有効にする構成デプロイメント属性
デフォルトでは、.NET エージェントはコントローラの config.xml
への構成の更新を確認します。コントローラの config.xml
構成ファイルでエージェントを無効にする場合は、controller enable config deployment
属性を false
に設定します。詳細については、.NET構成の管理を参照してください。
タイプ:ブール型
デフォルト:true
要否:いいえ
コントローラアプリケーションエレメント
controller application
エレメントは、controller
エレメントの子エレメントです。コントローラ インターフェイス内に表示される論理ビジネスアプリケーションの名前を示しています。
.NET エージェント 構成ユーティリティは、1つのサーバーにつき1つのビジネスアプリケーションをサポートしています。複数のアプリケーションをサポートするには、次のいずれかの方法を使用します。
- ティアを使用して単一サーバーでインストゥルメント化するさまざまなアプリケーションを整理する。
- または複数のビジネスアプリケーションへのサポートを手動で構成します。「.NETの複数ビジネスアプリケーションサポートの構成」を参照してください。
複数のアプリケーションサポートには、<applications>
コンテナエレメントを含むさまざまな構成エレメントが必要です。
必須エレメント: <application name="MyDotNetApplication"/>
アプリケーション名属性
application name
属性をコントローラで使用するビジネスアプリケーションに設定します。アプリケーション名が存在しない場合、エージェントが登録された時にコントローラがそれを作成します。config.xml
のインストゥルメント化されたすべてのアプリケーションは、コントローラで同じビジネスアプリケーションに登録されます。詳細については、アプリケーションモニタリングの概要を参照してください。
タイプ:文字列(環境変数も参照する場合があります)「環境変数の参照」を参照してください。
デフォルト:なし
要否:はい
環境変数:APPDYNAMICS.AGENT.APPLICATIONNAME
アプリケーション エージェント エレメントの個々のアプリケーションにティアを指定します。
アカウントエレメント
account
エレメントは、controller
エレメントの子エレメントです。AppDynamics コントローラをマルチテナントモードで実行する場合、または AppDynamics SaaS コントローラを使用する場合は、アカウント名を指定します。シングルテナントアカウントの場合、デフォルトのアカウント名は customer1
です。AppDynamics SaaS コントローラを使用する場合、アカウント名は AppDynamics からのウェルカムメールで通知されます。
エージェントは、コントローラで認証するパスワードとしてアカウントアクセスキーを使用する必要があります。シングルテナントアカウントの場合、コントローラの Settings > License でアクセスキーを確認できます。AppDynamics SaaS コントローラを使用する場合、アカウントアクセスキーは AppDynamics からのウェルカムメールで通知されます。
必須エレメント: <account name="mycompany" password="myaccesskey"/>
アカウント名属性
account name
属性は、SaaS またはマルチテナントコントローラのアカウント名を示します。
タイプ:文字列
デフォルト:シングルテナント コントローラの場合、アカウント名の指定がないと、エージェントはデフォルトで「customer1
」と見なします。
必須:SaaS コントローラまたはマルチテナントコントローラの場合のみ。
環境変数:APPDYNAMICS.AGENT.ACCOUNTNAME
アカウントパスワード属性
account password
属性は、コントローラのアカウントアクセスキーを示します。
タイプ:文字列
デフォルト:なし
要否:要
環境変数:APPDYNAMICS.AGENT.ACCOUNTACCESSKEY
プロキシエレメント
proxy
エレメントは、controller
エレメントの子エレメントです。これを使用して、プロキシサーバー経由でコントローラへの認証なしの接続を構成します。
任意のエレメント: <proxy host="proxy-name" port="3128" enabled="true"/>
プロキシホスト属性
proxy host
属性は、プロキシサーバのホスト名または IP アドレスです。
タイプ:文字列
デフォルト:なし
必須:プロキシエレメントのホストが必須
プロキシポート属性
proxy port
属性は、プロキシサーバのポートを示します。
タイプ:正の整数
デフォルト:なし
必須:プロキシエレメントのポートが必須
プロキシenabled属性
プロキシサーバ経由でコントローラへのアクセスを有効にするには、proxy enabled
属性を true
に設定します。
タイプ:ブール型
デフォルト:true
要否:いいえ
プロキシ - 認証エレメント
authentication
エレメントは、proxy
エレメントの子エレメントです。authentication
エレメントを使用してプロキシ認証を有効にし、プロキシサーバのログイン情報を指定します。セキュリティポリシーがディスクに保存されたログイン情報を保護するよう要求する環境では、ログイン情報を暗号化して、Windows 資格情報マネージャーに保存できます。
任意のエレメント:<authentication enabled="true" user_name="my_proxy_user" password="password" domain="my_windows_domain"/>
プロキシ認証enabled属性
proxy
authentication enabled
属性を true
に設定して、エージェントがプロキシサーバにログイン情報を送るように構成します。
タイプ:ブール型
デフォルト:false
要否:いいえ
プロキシ認証ユーザー名属性
proxy
authentication username
属性は、プロキシユーザの名前を示します。
タイプ:文字列
デフォルト:なし
必須:認証エレメントにはユーザ名属性が必須
プロキシ認証パスワード属性
proxy
authentication password
属性は、プロキシユーザのパスワードを示します。
タイプ:文字列
デフォルト:なし
要否:いいえ
プロキシ認証ドメイン属性
proxy
authentication domain
属性は、ユーザ名が存在するドメインまたはレルムを指定します。ホストコンピュータ名、Active Directory ドメイン、または DNS ドメインを指定できます。
タイプ:文字列
デフォルト:なし
要否:いいえ
プロキシ認証が有効なコントローラの構成例
この例では、エージェントはプロキシ認証を使用してプロキシ(myproxy.example.com
)経由でコントローラにアクセスします。.NET エージェントは、ログイン情報(MyProxyUser@mydomain.com
)とパスワード(password
)を使用してプロキシサーバにアクセスします。
<controller host="mycontroller.example.com">
<application name="MyDotNetApplicaition"/>
<proxy host="myproxy.example.com" port="3128" enabled="true">
<authentication enabled="true" user_name="MyProxyUser" password="password" domain="mydomain.com"/>
</proxy>
</controller>
マシンエージェントエレメント
machine-agent
エレメントは、AppDynamics エージェントエレメントの子エレメントです。machine-agent
エレメントを空にすると、.NET マシンエージェントのデフォルトのインストゥルメンテーションが有効になります。「CLRのモニタリング」および「IISのモニタリング」を参照してください。
オプションで追加の Microsoft パフォーマンスカウンターまたは .NET Agent instrumentor をマシンエージェント エレメントの子エレメントとして有効にします。
必須エレメント: <machine-agent/>
マシンスナップショットエレメント
machine-snapshot
エレメントは、machine-agent
エレメントの子エレメントです。ご使用の環境でのマシンスナップショット用の設定を調整するのに使用します。属性を指定しない場合、エージェントはその属性用のデフォルト値を使用します。「.NETのマシンスナップショット」および「.NETのマシンスナップショットの構成」を参照してください。
任意のエレメント: <machine-snapshot enabled=
"true"
window-size=
"600"
samples-per-window=
"60"
violations-per-window=
"6"
max-percent-cpu=
"80"
max-percent-memory=
"80"
max-queue-item-age=
"100"
periodic-collection=
"600"
/>
マシンスナップショットenabled属性
machine-snapshot enabled
属性を false
に設定すると、マシンスナップショットを無効にします。
タイプ:ブール型
デフォルト:true
要否:いいえ
マシンスナップショット時間枠属性
.NET マシンエージェントがサンプルを取得するための時間枠サイズの時間範囲を秒単位で指定します。エージェントは、時間枠内でサンプルを取得し、しきい値(max percent CPU
、max percent memory
、max queue item age
)が違反していないか確認します。
タイプ:整数
デフォルト:600
要否:いいえ
時間枠ごとのマシンスナップショットサンプル属性
指定された時間枠内で、.NETマシンエージェントが取得するサンプルの数を指定する。たとえば、window size
が 600 で samples per window
が 60 の場合、エージェントは 10 秒ごとにサンプルを取得します。
タイプ:整数
デフォルト:60
要否:いいえ
時間枠ごとのマシンスナップショット違反属性
.NET マシンエージェントが、あるしきい値について時間枠あたりの違反数を検出すると、スナップショットが取得されます。エージェントは、違反があったしきい値について時間枠あたり 1 つのスナップショットを取得します。たとえば、violations per window
が 6
に設定されていて、6 つのサンプルでメモリ使用率が 80% 以上の場合、エージェントはスナップショットを取得します。各しきい値のカウンタは独立しています。
タイプ:整数
デフォルト:6
要否:いいえ
マシンスナップショット最大メモリ使用率属性
.NET マシンエージェントが、マシンで max percent memory
値以上のメモリ使用率を検出した場合、そのサンプルに違反としてフラグを立てます。最小値は 20 です。最大値は 100 です。
タイプ:整数
デフォルト:80
要否:いいえ
マシンスナップショット最大 CPU 使用率属性
.NET マシンエージェントが、マシンで max percent cpu
値以上の CPU 使用率を検出した場合、そのサンプルに違反としてフラグを立てます。最小値は 20 です。最大値は 100 です。
タイプ:整数
デフォルト:80
要否:いいえ
マシンスナップショットキューアイテム最大経過時間属性
.NET マシンエージェントが、IIS キューで最も古いアイテムが max queue item age
値(ミリ秒単位)以上であることを検出した場合、違反としてこのサンプルにフラグを立てます。
タイプ:整数
デフォルト:100
要否:いいえ
マシンスナップショット定期的収集属性
.NETマシンエージェントは、定期的な収集時間範囲毎に1つのスナップショットを取得します。値を秒単位で指定します。最小値は60秒です。
タイプ:整数
デフォルト:600
要否:いいえ
CLRクラッシュレポートエレメント
clrcrash-reporting
エレメントは、machine-agent
エレメントの子エレメントです。clrcrash-reporting
エレメントを使用して、.NET マシンエージェントがコントローラに CLR クラッシュイベントを報告するかどうかを制御します。次を参照してください。CLRクラッシュのモニタリング
任意のエレメント:<clrcrash-reporting enabled="true"/>
CLRクラッシュレポートenabled属性
clrcrash-reporting enabled
属性を false
に設定し、CLR クラッシュイベントのコントローラへの報告を停止します。
タイプ:ブール型
デフォルト:true
要否:いいえ
プロセスのモニタリングエレメント
process-monitor
エレメントは、machine-agent
エレメントの子エレメントです。デフォルトでは、エージェントはすべての IIS プロセスにプロセスモニタリングを有効にします。
任意のエレメント: <process-monitor report-all-iis-processes="true"/>
すべてのIISプロセスを報告するプロセスのモニタリング属性
report-all-iis-processes
属性を false
に設定し、インストゥルメント化された IIS プロセスにのみプロセスモニタリングを有効にします。
タイプ:ブール型
デフォルト:true
要否:いいえ
メトリックエレメント
metrics
エレメントは、machine-agent
エレメントの子エレメントです。デフォルトでは、マシンエージェントは最大 200 個のメトリックを登録します。metrics
エレメントを使用して、.NET マシンエージェントが登録できるメトリックの数を増やします。次を参照してください。メトリックの制限
メトリック登録制限を増やす場合は注意してください。この制限を増やすと、エージェントとコントローラのリソースオーバーヘッドが増える場合があります。
任意のエレメント: <metrics max-metrics="200"/>
メトリックmax-metrics属性
.NET マシンエージェントが登録できるメトリックの最大数を指定します。
タイプ:整数
デフォルト:200
要否:いいえ
Perf-metricsエレメント
perf-metrics
エレメントは、metrics
エレメントの子エレメントです。デフォルトでは、マシンエージェントによってパフォーマンスメトリックの完全なセットが収集され、報告されます。パフォーマンスメトリックの優先度レベルを変更して、エージェントが収集するメトリックを制限し、それによってエージェントのオーバーヘッドを減らすことができます。メトリックとその優先順位の完全なリストについては、「Windowsパフォーマンスメトリックの管理」を参照してください。任意のエレメント:<perf-metrics priority-level="3">
Perf-metrics priority-level エレメント
収集するマシンエージェントのパフォーマンスメトリックのセットを次のように指定します。
- 0 - メトリック収集の無効化
- 1 - 優先度の高いメトリックのみを収集
- 2 - 優先度が高~中程度のメトリックを収集
- 3 - すべてのメトリック(優先度が高い、中程度、低い)を収集
タイプ:0 ~ 3 の範囲の整数
デフォルト:3
必須:perf-metrics
エレメントを使用する場合
Perf-metricエレメント
perf-metric
エレメントは、perf-metrics
エレメントの子エレメントです。perf-metric
の優先度を 0
に設定し、パフォーマンスメトリックの通常の収集を無効にすると、perf-metric
エレメント使用して個々のパフォーマンスメトリックを有効にできます。perf-metric
の優先度の値が 0 より大きい場合、個々のメトリックは有効にできません。
任意のエレメント:<perf-metric name="<metric_path>"/>
Perf-metric名属性
パフォーマンスメトリックの完全パスを指定します。% Busy
メトリックと Errors Unhandled During Execution
メトリックについては、次の例を参照してください。
タイプ:文字列(メトリックパス)
デフォルト:N/A
必須:perf-metric
エレメントを使用する場合
各パフォーマンスメトリックを使用したマシンエージェント構成のサンプル
<machine-agent>
<metrics>
<!-- Disable collection of performance metrics in general. -->
<perf-metrics priority-level="0">
<!-- Enable collection of individual performance metrics. -->
<perf-metric name="Hardware Resources|CPU|%Busy"/>
<perf-metric name="ASP.NET Applications|Errors Unhandled During Execution"/>
</perf-metrics>
</metrics>
</machine-agent>
パフォーマンスカウンターエレメント
perf-counters
エレメントは、machine-agent
エレメントの子エレメントです。パフォーマンスカウンターすべてのコンテナとなります。
任意のエレメント: <perf-counters>
パフォーマンスカウンターエレメント
perf-counter
エレメントは、perf-counters
エレメントの子エレメントです。有効にするパフォーマンスカウンタのリストについては、「.NET フレームワークのパフォーマンスカウンタ」を参照してください。
任意のエレメント:<perf-counter cat="category" name="name" instance="instance"/>
パフォーマンスカウンターカテゴリ属性
perf-counter
cat
属性は、パフォーマンスカウンターのカテゴリを示します。
タイプ:文字列
デフォルト:なし
必須:perf-counter
エレメントにカテゴリは必須。
パフォーマンスカウンター名属性
perf-counter
name
属性は、パフォーマンスカウンターの名前を示します。
タイプ:文字列
デフォルト:なし
必須:perf-counter
エレメントに名前は必須。
パフォーマンスカウンターインスタンス属性
perf-counter
instance
属性は、パフォーマンスカウンターのインスタンス値です。
タイプ:文字列
デフォルト:なし
必須:perf-counter
エレメントにインスタンスは必須。
パフォーマンスカウンターを使用したマシンエージェント構成のサンプル
<machine-agent>
<!-- Additional machine level Performance Counters -->
<perf-counters>
<perf-counter cat="Network Interface" name="Bytes Sent" instance="Local Area Connection"/>
</perf-counters>
</machine-agent>
インストゥルメンテーションエレメント
instrumentation
エレメントは、machine-agent
エレメントの子エレメントです。追加の .NET Agent instrumentor(スレッド相関、.NET Remoting の相関など)を有効にできます。
任意のエレメント: <instrumentation>
Instrumentor エレメント
instrumentor
エレメントは、instrumentation
エレメントの子エレメントです。instrumentor
エレメントは、実装する .NET Agent instrumentor を指定します。
任意のエレメント:<instrumentor name="instrumentor name" enabled="true"/>/>
instrumentor名属性
instrumentor name
属性は、instrumentor の名前を示します。
タイプ:文字列
デフォルト:なし
必須:Instrumentor エレメントに名前は必須。
Instrumentor enabled属性
instrumentor enabled
属性を true
に設定し、インストゥルメンテーションを有効にします。
タイプ:ブール型
デフォルト:false
要否:いいえ。
現在の構成の構文は enabled="true"
です。バージョン3.7.8以前ではdisabled="false"が使用されます。
スレッド相関Instrumentorを使用したマシンエージェント構成のサンプル
<machine-agent>
<!--Enable thread correlation-->
<instrumentation>
<instrumentor name="ThreadCorrelationThreadPoolCLR2Instrumentor" enabled="true"/>
<instrumentor name="ThreadStartCLR2Instrumentor" enabled="true"/>
<instrumentor name="ThreadStartCLR4Instrumentor" enabled="true"/>
</instrumentation>
</machine-agent>
追加 .NET Agent Instrumentor
- 次を参照してください。 .NETのスレッドの関連付け
- 次を参照してください。 .NET Remotingの関連付けを有効化
- 次を参照してください。WCFデータサービスのインストゥルメンテーションの有効化
アプリケーションエージェントエレメント
app-agents
エレメントは、appdynamics
agent
エレメントの子エレメントです。IISアプリケーション、Windowsサービス、スタンドアロンアプリケーションのアプリケーションエージェント構成のコンテナです。
必須エレメント: <app-agents enabled="true">
アプリケーションエージェントenabled属性
サーバ上でのアプリケーションのモニタリングを無効にするには、app-agents enabled
属性を false
に設定します。
タイプ:ブール型
デフォルト:true
要否:いいえ
デフォルトプロファイラエレメント
default profiler
エレメントは、app-agents
エレメントの子エレメントです。マシン上のすべてのインストゥルメント化された .NET アプリケーション(IIS アプリケーション、アプリケーションプール、Windows サービス、スタンドアロン アプリケーション)のデフォルトプロファイラ動作のカスタマイズを定義します。
任意のエレメント:<profiler>
プロファイラ - Disabled Featuresエレメント
disabled-features
エレメントは、profiler
エレメントの子エレメントです。セキュリティまたはプライバシー上の理由からエージェントレベルでデータ収集メカニズムを無効化するために、このプロパティを使用します。この構成は、コントローラが設定する構成をオーバーライドします。
オプションのエレメント: <disabled-features value="NONE"/>
Disabled features値属性
disabled-features value
属性は、無効化する機能のカンマ区切りリストです。利用可能な値は以下の通り。
- LOG_PAYLOAD:log-request-payload ノードプロパティをオーバーライドし、ロギング HTTP リクエストペイロードを抑制する。
- RAW_SQL:
capture-raw-sql
ノードプロパティをオーバーライドし、ロギング raw SQL 出力を抑制します。 - CUSTOM_EXIT_SNAP_DATA: カスタムイグジットポイントからのスナップショットデータを抑制する
- METHOD_INV_DATA_COLLECTOR: メソッド呼び出しデータコレクターのユーザーデータを抑制する
- HTTP_DATA_COLLECTOR: HTTPリクエストデータコレクターのユーザーデータを抑制する
- INFO_POINT:インフォメーションポイントメトリックを抑制する
- ALL: 利用可能な機能をすべて無効化する
- NONE: 機能を無効化しない
タイプ:文字列
デフォルト:なし
要否:いいえ
プロファイラ - 正常イグジットコードエレメント
successful-exit-code
エレメントは、profiler
エレメントの子エレメントです。デフォルトの正常イグジットコードは、WindowsサービスまたはスタンドアロンアプリケーションにとってCLR再起動イベントが正常であったかどうか、エージェントがフラグをたてる可否判断を行います。この構成は IIS には適用されません。
任意のエレメント:<successful-exit-code value="0"/>
正常イグジットコード値属性
タイプ:整数
デフォルト:0
要否:いいえ
プロファイラ - ランタイムリインストゥルメンテーションエレメント
runtime-reinstrumentation
エレメントは、profiler
エレメントの子エレメントです。このプロパティを使用してランタイムリインストゥルメンテーションを構成します。次を参照してください。.NETのランタイムリインストゥルメンテーションを構成
任意のエレメント: <runtime-reinstrumentation enabled=
"true"
interval=
"60000"
optimize=
"true"
/>
ランタイムリインストゥルメンテーションenabled属性
true
に設定し、ランタイム リインストゥルメンテーションを有効化します。
タイプ:ブール型
デフォルト:false
要否:いいえ
ランタイムリインストゥルメンテーション間隔属性
ランタイムリインストゥルメンテーションを開始する構成の更新をエージェントが確認する頻度(ミリ秒単位)。
タイプ:整数
デフォルト:60000 ミリ秒
最小:ランタイム リインストゥルメンテーションではシステムオーバーヘッドが若干増えるため、AppDynamics では最小の間隔として 1 分または 60000 ミリ秒を推奨。
要否:いいえ
デフォルトプロファイラ構成のサンプル
<app-agents>
<profiler>
<disabled-features value="LOG_PAYLOAD,RAW_SQL,CUSTOM_EXIT_SNAP_DATA"/>
<!-- Set the successful exit code for Windows services and standalone applications to "1." -->
<successful-exit-code value="1"/>
<!-- Enable Runtime reinstrumentation -->
<runtime-reinstrumentation enabled="true" interval="60000"/>
</profiler>
...
</app-agents>
アプリケーションエージェント - IISエレメント
IIS
エレメントは、app-agents
エレメントの子エレメントです。IISアプリケーションの構成には3つのオプションがあります。
- 自動構成
- アプリケーションプール構成
- アプリケーション構成
アプリケーションプールの設定は、各アプリケーションが固有の構成を持っていない限り、アプリケーションプール内のアプリケーションすべてに適用されます。
明示的な子レベルの構成は親レベルの構成をオーバーライドします。それ以外は、子が親の構成を引き継ぎます。
任意のエレメント: <IIS>
子アプリケーションの除外属性
デフォルトでは、IIS アプリケーションをインストゥルメント化すると、.NET エージェントは子アプリケーションをインストゥルメント化し、親と同じティアに割り当てます。エージェントが自動的に子アプリケーションをインストゥルメント化しないようにするには、exclude-child-applications
を true
に設定します。例:<IIS exclude-child-applications="true">
子アプリケーションのインストゥルメンテーションを全体的に無効化している場合は、IIS アプリケーションエレメントを使用して特定の子アプリケーションのインストゥルメント化を実行できます。
タイプ:ブール型
デフォルト:false
要否:いいえ
IIS自動インストゥルメンテーションエレメント
automatic
エレメントは、IIS
エレメントの子エレメントです。automatic
エレメントを使用して、IIS アプリケーションすべての自動インストゥルメンテーションを有効化または無効化します。自動インストゥルメンテーションと手動インストゥルメンテーションの両方を構成できます。手動構成は自動構成をオーバーライドします。
任意のエレメント: <automatic enabled="false" />
自動enabled属性
automatic enabled
属性を true
に設定して、すべての IIS アプリケーションのインストゥルメンテーションを有効にします。これは、.NET エージェント構成ユーティリティの自動構成オプションを使用する場合のデフォルト設定です。すべての IIS アプリケーションの自動インストゥルメンテーションを無効にするには、この値を false
に設定します。
タイプ:ブール型
デフォルト:true
要否:いいえ
IISアプリケーション名enabled属性
デフォルトでは、エージェントは IIS アプリケーション名を報告しません。CLR メタデータ内の IIS アプリケーション名を表示するには、iis-application-name-enabled
属性を true
に設定します。たとえば、<automatic iis-application-name-enabled="true" />
のようになります。有効にすると、名前が CLR メタデータの iis-application-name
値として表示されます。
タイプ:ブール型
デフォルト:false
要否:いいえ
IISアプリケーションプールエレメント
IIS
application pools
エレメントは、IIS
エレメントの子エレメントです。インストゥルメンテーションのために構成するIISアプリケーションプールすべてのコンテナエレメントです。
任意のエレメント:<application-pools>
IISアプリケーションプールエレメント
application-pool
エレメントは、application-pools
エレメントの子エレメントです。名前属性で区別される複数のアプリケーションプールエレメントが存在する場合があります。アプリケーションプールエレメントを使用して、アプリケーションプール内の全アプリケーションのアプリケーションエージェントを構成します。IIS アプリケーションプールの詳細については、「IIS でのアプリケーションプールの管理」を参照してください。
IISアプリケーションエレメントのアプリケーション固有の構成は、アプリケーションプール構成をオーバーライドします。
任意のエレメント: <application-pool name="DefaultAppPool" enabled="false">
アプリケーションプール名属性
application-pool name
属性は、IIS アプリケーションプールの名前を示します。
タイプ:文字列
デフォルト:なし
必須:application-pool エレメントに名前は必須。
アプリケーションプールenabled属性
application-pool enabled
属性を false
に設定して、アプリケーションプール内のすべてのアプリケーションのインストゥルメンテーションを無効にします。アプリケーションプール内のすべてのアプリケーションをインストゥルメント化するには、値を true
に設定します。
タイプ:ブール型
デフォルト:なし。指定されない場合のデフォルトは、true
です。
要否:いいえ
アプリケーションプール ティア エレメント
tier
エレメントは、application-pool
エレメントの子エレメントです。アプリケーションプールのインストゥルメンテーションを有効にする場合は、コントローラで tier
エレメントを使用して、プールのアプリケーションをティアに割り当てる必要があります。次を参照してくださいアプリケーションモニタリングの概要。
必須エレメント: <tier name="Inventory" />
ティア名属性
tier name
属性を使用して、ティアを指定します。
タイプ:文字列(環境変数も参照する場合があります)「環境変数の参照」を参照してください。
デフォルト:なし
要否:はい
IISアプリケーションエレメント
IIS applications
エレメントは、IIS
エレメントの子エレメントです。インストゥルメンテーション用に構成するIISアプリケーションすべてのコンテナエレメントです。
オプションのエレメント:<applications>
アプリケーションエレメント
application
エレメントは、applications
エレメントの子エレメントです。複数のアプリケーションエレメントを使用して様々なサイトやアプリケーションをインストゥルメント化します。IIS サイトやアプリケーションについては、「IIS 7 以降のサイト、アプリケーション、仮想ディレクトリについて」を参照してください。
任意のエレメント: <application path="/" site="FirstSite" port="8008"site-regex="false">
アプリケーションサイト属性
application
site
属性は、アプリケーションの IIS のルートサイトを示します。Windows Azure でサイト名の一部しかわからない場合、サイト名には正規表現を使用できます。正規表現を使用する場合は、Application site-regex 属性を true に設定します。
タイプ:文字列
デフォルト:なし
必須:アプリケーションエレメントにサイトは必須。
アプリケーションsite-regex属性
application
site-regex
属性を true
に設定し、Application site
属性の値を正規表現として扱います。
タイプ:ブール型
デフォルト:false
要否:いいえ
アプリケーションパス属性
application path
属性は、ルートサイトを基準としたアプリケーションの相対パスを示します。フォワードスラッシュを使用して、ルートサイトを示し、すべての子アプリケーションのインストゥルメンテーションを行います。アプリケーションへのパスを使用すると、特定のアプリケーションと子のインストゥルメンテーションを行うことができます。
たとえば、Site1 は 2 つのアプリケーション AppX
と AppY
をホストするとします。Site 1、AppY
、および AppZ
をインストゥルメント化するには、パスを "/" に設定します。AppY
はインストゥルメント化し、AppZ
はインストゥルメント化しない場合は、パスを /AppY
に設定します。
タイプ:文字列
デフォルト:/
必須:application
エレメントに path
は必須。
アプリケーションポート属性
IIS 6 の複数のサイトが同じサイト名を持つ場合、サイトを区別するためにサイトの port
属性を 設定します。
タイプ:整数
デフォルト:なし
要否:いいえ
アプリケーションenabled属性
親アプリケーションのインストゥルメンテーションは有効にしても、子アプリケーションについては、無効にする必要がある場合があります。この場合、無効化する子アプリケーションの application
属性を作成して、application enabled
属性を false
に設定します。
タイプ:ブール型
デフォルト:true
要否:いいえ
アプリケーション ティア エレメント
tier
エレメントは、application
エレメントの子エレメントです。アプリケーションのインストゥルメンテーションを有効にする場合は、コントローラで tier
エレメントを使用して、アプリケーションをティアに割り当てる必要があります。次を参照してくださいアプリケーションモニタリングの概要。
必須エレメント: <tier name="Consumer" />
ティア名属性
tier name
属性は、ビジネス アプリケーション ティアを示します。
タイプ:文字列(環境変数も参照する場合があります)「環境変数の参照」を参照してください。
デフォルト:なし
要否:はい
IISアプリケーション構成のサンプル
<IIS>
<!-- Automatic instruments all IIS applications when enabled. -->
<automatic enabled="false"/>
<!-- Application Pool agent configurations -->
<application-pools>
<!-- Do not instrument applications in DefaultAppPool when "enabled" attribute is set to false. -->
<application-pool name="DefaultAppPool" enabled="false">
<tier name="Tier Name"/>
</application-pool>
<!-- Instrument applications in the OtherAppPpool and assign them to the Inventory tier. -->
<application-pool name="OtherAppPool">
<tier name="Inventory"/>
</application-pool>
</application-pools>
<applications>
<!-- Instrument all applications in the First Site. -->
<application path="/" site="FirstSite">
<tier name="Order"/>
</application>
<!-- Instrument the /app application and child apps in the Second Site -->
<!-- but not the root Second Site application. -->
<application path="/app" site="SecondSite">
<tier name="Consumer"/>
</application>
<!-- Regular expression for site name -->
<!-- assigns all sites beginning with "MyRole" to the Credit Services tier. -->
<application path="/" site="MyRole_\w+" site-regex="true">
<tier name="Credit Services"/>
</application>
</applications>
</IIS>
アプリケーションエージェント - スタンドアロンアプリケーションエレメント
standalone-applications
エレメントは、app-agents
エレメントの子エレメントです。インストゥルメンテーション用に構成する Windows サービスおよびスタンドアロン アプリケーションのコンテナエレメントです。Windowsサービスとスタンドアロンアプリケーションの.NETエージェントの構成を参照してください
任意のエレメント: <standalone-applications>
スタンドアロンアプリケーションエレメント
standalone-application
エレメントは、standalone-applications
エレメントの子エレメントです。インストゥルメンテーションを行うWindowsサービスまたはスタンドアロンアプリケーションを指定します。
任意のエレメント: <standalone-application executable="MyWindowsApplication.exe" command-line="">
スタンドアロンアプリケーション実行ファイル属性
standalone-application executable
属性は、インストゥルメント化する Windows アプリケーションのファイル名を指定します。スタンドアロン アプリケーション エレメントの実行可能属性を次のいずれかに設定します。
実行可能ファイル名:
MyStandaloneApp.exe
やMyWindowsService.exe
など。ファイル拡張子はオプションであるためMyStandaloneApp
も同様に機能します。- 実行可能ファイルへの完全パス。次はその例です。
C:\Program Files\MyApplication\MyStandaloneApp.exe
- 実行可能ファイルへの部分的なパス(
MyApplication\MyStandaloneApp.exe
など)。異なるパスから実行している同じ実行可能ファイルのインスタンスごとに異なるティアを割り当てる場合は、実行可能ファイルへの完全パスまたは部分的なパスを使用。
タイプ:文字列
デフォルト:なし
要否:要
スタンドアロンアプリケーションコマンドライン属性
同じ実行可能ファイルの 2 つのインスタンスを区別するには、standalone-application command-line
属性でアプリケーション コマンド ラインの独自な部分(引数など)を指定します。
タイプ:文字列
デフォルト:なし
要否: いいえ
スタンドアロンアプリケーションapp-domain-name属性
複数のアプリケーションドメインを持つアプリケーションの場合、app-domain-name
属性によりインストゥルメンテーションを特定のアプリケーションドメインに制限できます。次を参照してください。 アプリケーションドメインモニタリングの構成
タイプ:文字列
デフォルト:なし
要否:いいえ
スタンドアロンアプリケーション ティア エレメント
tier
エレメントは、standalone-application
エレメントの子エレメントです。アプリケーションのインストゥルメンテーションを有効にする場合は、コントローラで tier
エレメントを使用して、アプリケーションをティアに割り当てる必要があります。「アプリケーションモニタリングの概要」を参照してください。
必須エレメント: <tier name="Consumer" />
ティア名属性
tier name
属性は、ビジネス アプリケーション ティアを示します。
タイプ:文字列(環境変数も参照する場合があります)「環境変数の参照
」を参照してください。デフォルト:なし
要否:要
環境変数:APPDYNAMICS.AGENT.TIERNAME
Windowsサービスとスタンドアロンアプリケーション構成のサンプル
<standalone-applications>
<standalone-application executable="ExampleApplication.exe">
<tier name="Standalone Application Tier"/>
</standalone-application>
<!-- Instrument a Windows service using arguments. -->
<!-- The following example matches the command "MyWindowsService.exe -d -x -r". -->
<standalone-application executable="MyWindowsService.exe" command-line="-x">
<tier name="Windows Service Tier"/>
</standalone-application>
</standalone-applications>