2016-10-07 8 views
2

이전 ASP.Net의 웹 응용 프로그램에서 디버그 메시지를 보려면 DebugView.exe를 사용했습니다. Debug.WriteLine ("Message to display"); DebugView의 창에 표시됩니다. 또한 해당 방법을 사용하여 프로덕션 서버에서 메시지를 추적/볼 수도 있습니다.
예 : http://woutercx.com/2013/08/23/debugview-tool-how-it-saved-my-day/ASP.Net 핵심 로깅 및 DebugView.exe

ASPNetCore에서 Logger를 사용하여이 작업을 수행하려고합니다. VS2015 출력 창에서 모든 로깅을 올바르게 볼 수 있습니다. 그러나 DebugView 소프트웨어에서는 더 이상 볼 수 없었습니다. 그리고 그 로깅 메시지는 MVC & ASP 엔진의 다른 로깅 라인 수천과 함께 누락되었습니다. 단지보기를 원하는 메시지를보기가 정말로 어렵습니다.

아래 그림 예로 참조하십시오

enter image description here

어쨌든 거기에 ASP.Net 코어에 DebugView와의 그 로그 메시지를 볼 수? 아니면 어쨌든 ASPNet에서 추가 로깅을 제거 할 수 있습니다. 코어?

Startup.cs에서 해당 줄을 제외하려고했으나 아직 성공하지 못했습니다. 소스는 (당신이 부착 된 디버거 원격 디버깅 아니라면)는 생산의 어떤 조합 없습니다 의미 디버거가 연결되어있는 경우 Debug.WriteLine를 호출처럼

loggerFactory.AddConsole((cat, level) => cat.StartsWith("WindowsAuthentication.") && level == LogLevel.Debug); 
loggerFactory.AddDebug(LogLevel.Debug); 

답변

1

는 것 같습니다. 관련 소스 라인은 GitHub의 https://github.com/aspnet/Logging/blob/dev/src/Microsoft.Extensions.Logging.Debug/DebugLogger.cs#L48-L50입니다. 그것은 말한다 :

public bool IsEnabled(LogLevel logLevel) 
    { 
     // If the filter is null, everything is enabled 
     // unless the debugger is not attached 
     return Debugger.IsAttached && 
      logLevel != LogLevel.None && 
      (_filter == null || _filter(_name, logLevel)); 
    } 

난 당신 GitHub에있는 것과 거의 동일 보이는 자신의 디버그 로거 제공자를 작성할 수 의심하지만 IsEnabled 방법을 무시에게 Debugger.IsAttached 검사가 있습니다.