イベントログがない: CoCreate エラー (.NET)

問題

.NET アプリケーションが、数分経ってもデータを報告しなかったり、New Relic のイベントログが存在しない場合は、New Relic と競合する他のプロファイラーが実行されている可能性があります。

New Relic が他のプロファイラーと競合しているかどうかを確認する方法は、以下のとおりです。

  1. 以下のようなエラーがアプリケーションイベントログにあるかチェックします。

    NET Runtime version 2.0.50727.4234 - Failed to CoCreate profiler. Profiler CLSID: '{TRQGTQJM-KMJB-FQGP-VNGG-KUQTZWCKQ6QQ}'.
    NET Runtime version 4.0.30319.296 - Loading profiler failed during CoCreateInstance. Profiler CLSID: '{FF68FEB9-E58A-4B75-A2B8-90CE7D915A26}'.
  2. エラーにある CLSID と New Relic の CLSID を比較します。

    71DA0A04-7777-4EC6-9643-7D28B46A8A41
    FF68FEB9-E58A-4B75-A2B8-90CE7D915A26
  3. CLSID が一致しない場合は、別の .NET プロファイラーが実行しています。対策をご覧ください。CLSID が一致した場合は、CoCreateInstance 権限エラーをご覧ください。

対策

.NET アーキテクチャの仕様により、一度に1つのプロファイラーしか実行できません。.NET 用の New Relic を使うには、それ以外のプロファイラーをアンインストールします。

原因

これらのエラーは、別の .NET プロファイラーが実行中であることを示しています。.NET エージェントが正常に機能するためには、共通言語ランタイム(CLR)を使ってプロファイラーとして登録する必要があります。CLRは、コードが読み込まれたときに、.NET エージェントを呼び出し、計測対象のメソッドコールの場合、エージェントはコードを計測します。