2010-07-20 4 views
0

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

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

Видимо, это не стоит, но стоит 100 000.

ответ

0

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

0

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

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

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

0

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

Смежные вопросы