로깅을 사용하기 위해 PostSharp를 사용하는 프로젝트가 있습니다. 훌륭하게 작동합니다. 그러나 매우 엄격한 루프에서 실행되는 두 가지 방법이 있는데, 여기에는 로깅의 오버 헤드가 실제로 상당 부분 합산됩니다. 나는 로깅 코드에서 그들을 제외시키는 최선의 방법을 찾아 내려하고있다. 나는이 작업을 수행하고 프로파일 러를 실행하면PostSharp - AttributeExclude를 사용하는 방법을 제외하면 작동하지 않습니다.
내가 읽은 바로는,이 방법은 여전히 로그 코드 것으로 someMethod에서 실행되는()를 참조, 그러나
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(...)
을 작동합니다. 저는 SO와 PostSharp 포럼의 게시물을 기반으로 여러 가지 반복을 시도했으며, 항상 동일한 결과를 얻었습니다.
정말 간단해야하고 단지 뻔뻔스럽게 명백한 것을 놓친 것 같습니다.
제안한 해결책이 효과가 있습니다. Reflector를 사용하여 SomeMethod를보고 코드 안에 무엇이 있는지 살펴 보았습니까? –