Вы можете создать свои собственные пользовательские счетчики производительности и использовать их.
Все исключения также можно обрабатывать с помощью собственного средства ведения журнала, которое обрабатывает аспект счетчика производительности, а также регистрирует исключения в соответствующем журнале событий Windows .
Насколько я помню, это было не гигантское мероприятие, и с этого момента вы можете использовать практически любой инструмент для сбора и анализа данных, поиска корреляций между счетчиками и т. Д. (иметь, например, данные об использовании процессора / диска / сети и информацию о вызове метода на той же диаграмме в perflog.)
Что касается времени вызова метода, то его можно реализовать, используя QueryPerformanceCounter в пользовательскомЕсли у вас есть решение для удаленного взаимодействия или какая-либо пользовательская привязка, если вы работаете с WCF.
Полагаю, вы можете легко найти отличные ресурсы по всем темам - создать собственный счетчик производительности, использовать QPF для определения времени вызовов методов, создатьзаписи в системных журналах с пользовательскими источниками, с использованием пользовательских привязок для различных целей и т. д. - с некоторыми исследованиями.