Есть ли инструмент, который будет отслеживать / регистрировать управляемый код? - PullRequest
0 голосов
/ 20 июля 2010

Я работаю над ошибкой, когда у нас есть вариант использования, который работает, и немного другой вариант использования, который не работает. В кодовой базе почти нет журналирования, и я не хочу тратить время на разбрасывание журналов через базу кода, хотя у меня есть время, выделенное для этого на более поздний срок.

Существует ли инструмент, который регистрирует действия программы, т. Е. Регистрирует каждый вызов функции?

Очевидно, что Appsight делает это, но стоит 100 000.

Ответы [ 3 ]

0 голосов
/ 21 июля 2010

Решением, не требующим изменения / перекомпиляции кода, было бы использование инструмента, основанного на .NET Profiling API, который вставляет свои ловушки во время выполнения.

Единственный бесплатный открытый исходный кодя знаю, что трассировка не только входа / выхода метода, но и возвращаемых значений / параметров метода - SAE (Simple Assembly Explorer) .Когда вы откроете его, просто перейдите к своему исполняемому файлу, щелкните по нему правой кнопкой мыши и выберите «Профиль».

У этого инструмента есть некоторые ограничения - в частности, он не будет печатать значения универсальных типовтекстовый вывод не имеет отступов / предварительных подтверждений.

0 голосов
/ 22 июля 2010

Runtime Flow (разработанный мной) может регистрировать каждый вызов функции с параметрами для приложений .NET 2.0 - 4.0 без каких-либо дополнительных инструментов.

0 голосов
/ 21 июля 2010

Вы можете попробовать использовать наш инструмент ведения журнала SmartInspect вместе со структурой аспектно-ориентированного программирования (AOP) PostSharp .Используя нашу библиотеку аспектов , вы можете автоматически обрабатывать и регистрировать все вызовы методов, исключения и даже изменения полей / свойств.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...