2017-11-20 15 views
0

NLog를 사용하고 응용 프로그램에 대한 자체 로그 공급자를 만들었습니다. StartUp 클래스에서 NLog를 사용하여 구성을 설정합니다..NET Core BuildLoge Logging BeforeLog BuildWebHost

지금 Program.cs가 어떻게 나타나는지 보여 드리겠습니다.

public static void Main(string[] args) 
    { 
     var configurationDic = CreateConfigurationDictionary(); 
     // In here it can throw an exception therefore I need to be able to log here 

     var webHost = BuildWebHost(configurationDic, args); 

     var applicationLogger = webHost.Services.GetService<IMyTestLogProvider>().ApplicationLogger; 

     applicationLogger.LogInformation("*************** Start up ***************"); 

     webHost.Run(); 
    } 

로깅은 기본 클래스에서 이전에 로그해야한다는 점을 제외하고는 정상적으로 작동합니다. 웹 호스트를 구축하기 전에 응용 프로그램 로거를 얻는 방법에 대한 아이디어가 있습니까?

내가 할 수 있어야 예를 들어, https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2 보았다 :

var logger = NLogBuilder.ConfigureNLog("NLog.config").GetCurrentClassLogger(); 

를하지만 내 응용 프로그램은 내가 설치 NLog의 nuget 패키지를 가지고 있지만 NLogBuilder이 무엇인지 모른다.

아이디어가 있으십니까? 롭

+0

가 정확히 * 전에 무엇을하고 NLog 5+ (현재 베타)를 사용 호스트가 실제로 초기화 될 때까지 지연 될 수없는 웹 호스트는 기록되어야합니까? 거기에서 많은 일들이 일어나고 있다면, 그것은 웹 * 응용 프로그램이 실제로 웹 * 응용 프로그램과 관련이 없다는 신호입니다. – poke

+0

알림 https://www.nuget.org/packages/NLog.Web.AspNetCore/4.5.0-rc1이 릴리스되었습니다. net461 용 NLogBuilder를 활성화해야합니다. –

답변

0

하지만 내 어플은 설치 NLog의 nuget 패키지를 가지고 있지만 NLogBuilder이 무엇인지 모르는

감사합니다.

당신의 종속성을 확인이 필요합니다

  • NLog.Web.AspNetCore을 4.5+ (현재 beta04)
  • NLog 4.4.12+ (예를 들어, NLog 4.5 베타) - 아니 NLog 5! - 당신이 .NET 표준 1을 사용하는 경우 .NET 표준 1
  • 를 사용하지 않을 경우 (.NET하지 표준 2) -