ExtendedLog4NetLogger.cs 을 사용하여 런타임시 로그 파일 경로를 동적으로 변경하거나 LoggingFacility를 사용하는 방법을 찾으려고합니다.ExtendedLog4netLogger.cs를 사용하여 런타임에 appender의 로그 파일 경로를 설정하는 방법은 무엇입니까?
이 이렇게 직접 log4net을 사용하여 비슷한해야한다 :
container.AddFacility<LoggingFacility>(f => f.UseLog4Net());
업데이트 : :이 같은 log4net 통합을 등록하면 나는 ExtendedLogger에 액세스 할 방법
log4net.GlobalContext.Properties["LogName"] = logName;
을 내가 사용하는 다음 확장 로거를 등록하는 코드
container.AddFacility<LoggingFacility>(LoggerImplementation.ExtendedLog4net).WithConfig(configFile).ToLog(Logger));
ime 예외이며 로거는 null 인스턴스가 아니지만 전역 속성을 사용하여 작성된 로그 파일이 보이지 않으며 appender에 대한 구성 값을이 값으로 설정합니다.
<file type="log4net.Util.PatternString" value="%property{LogName}" />
방금 파일을 설정 한 경우 속성이 설정 파일의 전체 경로로 작동하는지 확인하십시오. 전역 변수를 설정하기 전에 구성이 완료 되었기 때문에 작동하지 않는지 궁금합니다.
덕분에이 르지, 내 질문을 업데이트 : 여기
은 예입니다. – OutOFTouch이것은 나에게 설정 파일 경로를 전달하고 등록 할 때 이름 지정 로거를 사용하는 방법에 대한 다른 문제를 일으킨다. container.AddFacility (f => f.UseLog4Net (configPath) .ToLog (namedLogger)); –
OutOFTouch
나는 이것을 시험해보고 작동하는지 확인한다 : container.AddFacility (f => f.LogUsing (LoggerImplementation.ExtendedLog4net) .WithConfig (configPath) .ToLog (namedLogger)); –
OutOFTouch