久々のラーカー初ポスター。さて、私はこれを調査するのに一日を費やしましたが、手がかりを見つけることができなかったので、私よりもはるかに知的な人々が以前にこれに遭遇したことを願っています.
現在、 Windows Server 2003で実行されている Windows サービス内でホストされている .NET 4 WCF サービスがいくつかあります。perfmon に行くと、期待どおり ServiceModelService 4.0.0.0 の下にすべて表示されます。ただし、これらの同じサービスがWindows Server 2008 R2で実行されている場合、いくつかのインスタンスしか表示されません。ホスティング サービスはすべて実行され、期待どおりに動作していますが、各カウンターの下にすべてのインスタンスが一覧表示されていないため、パフォーマンス カウンター情報を取得できません。
ServiceModelEndPoint 4.0.0.0 と ServiceModelOperation 4.0.0.0 でも同じことが起こります。
lodctr /r & lodctr /M:ServiceModelPerformanceCounters.man を介してカウンターを再インストールしようとしました。サーバー上の .NET 4 インストールの修復を試みました。
イベント ログに、カウンターまたは割り当てられたメモリに関する問題を示すエラーはありません。
すべての app.config ファイル
<diagnostics wmiProviderEnabled="true" performanceCounters="All" />
私が見つけた唯一のことは、Windows Server 2008 R2 では、レジストリHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ServiceModelEndpoint 3.0.0.0
には 4.0.0.0 のエントリのみがあり (他の 2 つの ServiceModel* カウンターも同じ)、VM は私が持っていない同じイメージから構築されているだけなので、これが予期されたものなのか、インストール中に問題が発生したのかを確認できました。
したがって、私が望んでいるのは、インストールが破損していること (2008 年にレジストリ設定に関する情報を見つけることができませんでした) を確認するか、すべての WCF サービス インスタンスが perfmon に表示されない理由のいずれかを確認することです。