Я пытаюсь использовать счетчик производительности, чтобы определить, сколько байтов моего приложения было отправлено или получено. Я воспользовался предложенным решением: Calculating Bandwidth, но экземпляр моего приложения не отображается в категории «.NET CLR Networking». Сообщение об исключении:Монитор производительности .NET CLR Networking 4.0.0.0 Именование наименований
«Instance„ApplicationName [8824]“не существует в указанной категории»
(я добавил <performanceCounters enabled="true"/>
в моем App.config и он все еще не может быть найден после того, как некоторые сетевые действия)
Итак, я запустил Performance Monitor, чтобы увидеть ошибку своими глазами. Как и ожидалось, мое приложение не отображается в категории .NET CLR Networking, но его, к счастью, можно найти в категории .NET CLR Networking 4.0.0.0.
Однако проблема заключается в том, что я не могу понять, как генерируется имя экземпляра. Вот имя экземпляра, который я вижу в Performance Monitor: ApplicationName.exe_p4952_r15_ad1
.
До сих пор я понял, что первые части должны быть изготовлены из ProcessName и PID, но я не имеют понятия, что за последние два («r15» и «ad1») штук родом из.
У кого-нибудь есть ключ к тому, что могут быть последними двумя частями?
Одним из решений было бы перечислить все экземпляры, найденные в категории «.NET CLR Networking 4.0.0.0», и искать ApplicationName.exe_PID *, но предпочли бы искать правильное имя напрямую (если возможно).
Вы получили это за работу? Кажется, я не получаю никаких значений со счетчика. – TheGateKeeper