サポートアドバイザリ:Azure とマイクロサービス .NET アプリケーションのスレッド数が多い

このドキュメントでは、AppDynamics 製品のサポートアドバイザリについて説明します。

概要

.NET アプリケーションをインストルメント化する際にスレッド数が多くなり、その結果 CPU 使用率が高くなるという報告が寄せられています。スレッド数が多いのは、これらのエージェントが使用するサードパーティのロギングフレームワークの結果です。

影響を受けるソフトウェア

NuGet パッケージまたは Azure サイト拡張機能を使用してインストルメント化された任意の Windows ベースの .NET アプリケーション。

回避策

プロファイラロギングをオフにします。この操作は可視性には影響しません。

プロファイラロギングをオフにするには、以下の手順を実行します。

  1. AppDynamicsAgentLog.config ファイルを探します。
    • Azure Site Extension のインストールの場合、D:\home\SiteExtensions\AppDynamics.WindowsAzure.SiteExtension.4.X.Release\AppDynamics\ にあります。
    • NuGet のインストールの場合は、エージェント DLL と同じフォルダにあります。
  2. 以下の行を削除します。
    • <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" />
  3. インストゥルメント化されたアプリケーションを再起動します。