RollingFileAppender 날짜 롤링을 프로그래밍 방식으로 구성하십시오

StackOverflow https://stackoverflow.com/questions/611483

  •  03-07-2019
  •  | 
  •  

문제

프로그래밍 방식으로 log4net에서 RollingFileAppender를 구성하는 작업을하고 있습니다. 나는 현재 이와 같은 것이있다 :

RollingFileAppender fa = new RollingFileAppender();
fa.AppendToFile = true;
fa.RollingStyle = RollingFileAppender.RollingMode.Date;
fa.DatePattern = "yyyyMMdd";
fa.StaticLogFileName = true;
// Set more properties and add the appender to the root repository

이것은 날짜에 따라 로그를 굴리는 것을 거부합니다. 롤링 스타일을 크기 또는 복합재로 전환하면 날짜 기반이 아닌 크기 기반 만 롤링하지만 크기 만 롤링합니다. 나는 staticLogFilename을 제거하고 DatePattern과 함께 놀지 못했습니다.

런타임의 부록 수를 알지 못하므로 과거에 작업 할 수 있었던 XML을 사용하여 구성하는 것은 프로그래밍 방식 으로이 프로그램을 구성해야합니다. 아무도 아이디어가 있습니까? 내가 뭔가를 놓치고 있습니까?

도움이 되었습니까?

해결책

이 동작은 RollingFileAppender (및 다른 많은 부록 및 필터)가 구현되기 때문입니다. ioptionhandler 인터페이스 "모든 옵션이 설정 될 때까지 옵션의 활성화를 연기 할 수 있습니다. 이는 모든 옵션이 설정 될 때까지 모호한 관련 옵션이있는 구성 요소에 필요합니다."

그리고 더 나아가 : "The 활성화 구성 속성이 설정된 후이 객체에서 메소드를 호출해야합니다. 활성화 될 때 까지이 개체는 정의되지 않은 상태에 있으므로 사용해서는 안됩니다. "

XML 파일을 통해 어댑터를 구성 할 때 Log4Net 구성기에 의해 수행되므로 활성화에 대해 생각할 필요가 없습니다.

다른 팁

파일 appender를 설정 한 후 ActiveAteOptions ()에 전화를 추가했지만 Appender를 계층에 추가하기 전에 작동하는 것처럼 보였습니다. 전화없이 일부 옵션이 붙어 있었지만 다른 옵션은 다른 날에 대한 질문입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top