サポートアドバイザリ:Azure とマイクロサービス .NET アプリケーションのスレッド数が多い
このドキュメントでは、AppDynamics 製品のサポートアドバイザリについて説明します。
概要
.NET アプリケーションをインストルメント化する際にスレッド数が多くなり、その結果 CPU 使用率が高くなるという報告が寄せられています。スレッド数が多いのは、これらのエージェントが使用するサードパーティのロギングフレームワークの結果です。
影響を受けるソフトウェア
NuGet パッケージまたは Azure サイト拡張機能を使用してインストルメント化された任意の Windows ベースの .NET アプリケーション。
回避策
プロファイラロギングをオフにします。この操作は可視性には影響しません。
プロファイラロギングをオフにするには、以下の手順を実行します。
- AppDynamicsAgentLog.config ファイルを探します。
- Azure Site Extension のインストールの場合、
D:\home\SiteExtensions\AppDynamics.WindowsAzure.SiteExtension.4.X.Release\AppDynamics\にあります。
- NuGet のインストールの場合は、エージェント DLL と同じフォルダにあります。
- Azure Site Extension のインストールの場合、
- 以下の行を削除します。
<target name="Profiler" xsi:type="File" archiveAboveSize="12000000" maxArchiveFiles="2" createDirs="true" fileName="${environment:variable=HOME}\LogFiles\AppDynamics\Profiler" layout="${longdate} ${processid} ${appdomainid} ${threadid} ${level} ${logger:shortName=True} ${message}" /><logger name="com.appdynamics.profiler.*" minlevel="Info" writeTo="Profiler" />
- インストゥルメント化されたアプリケーションを再起動します。