У нас есть проект, в котором мы используем PostSharp для включения ведения журнала. Прекрасно работает. Тем не менее, есть несколько методов, которые выполняются в очень жестких циклах, где накладные расходы на ведение журнала действительно составляют значительную сумму. Я пытаюсь найти лучший способ исключить их из кода регистрации.
Из того, что я читал, этот подход должен работать
AssemblyInfo.cs
// turn on logging for all methods in all classes
[assembly: Log(LogType.Debug)]
Code.cs
// exclude this specific method
[Log(AttributeExclude=true)]
private void SomeMethod(...)
Однако, когда я делаю это и запускаю его с помощью профилировщика, я все равно вижу, что код журнала выполняется в SomeMethod(). Я пробовал много разных итераций этого, основываясь на сообщениях на форумах SO и PostSharp, и всегда получаю один и тот же результат.
Такое ощущение, что это должно быть очень просто, и я просто упускаю что-то явно очевидное.