2013-10-22 4 views
1

구성 파일에서 log4net.Util.PatternString 값을 읽는 방법은 무엇입니까?구성 파일에서 log4net.Util.PatternString을 읽는 중

<log4net> 
    ... 
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender"> 
     <file type="log4net.Util.PatternString" value="D:\AppLogs\%date{yyyy}\%date{MM}\%date{dd-MMM}.xml" /> 
    </appender> 
</log4net> 

ILog 속성을 살펴 보았지만 로그 파일 위치를 제공하는 항목을 찾을 수 없습니다.

+0

PatternString 또는 로그 파일 이름 만 필요합니까? –

+0

PatternString에 관심이 있습니다. – Oxon

답변

0

xml 파일로 log4net 구성을 구문 분석 한 다음 appender -> file en 및 value 속성을 찾을 수 있습니다.

또는 현재 펜더에서 검색처럼 somethink 시도 할 수 있습니다 :

foreach (var r in log4net.LogManager.GetAllRepositories()){ 
    foreach (var a in r.GetAppenders()){ 
    if (a is log4net.Appender.FileAppender){ 
     log4net.Appender.FileAppender fileappender = a as log4net.Appender.FileAppender; 
     ..... 
    } 
    } 
} 
0

당신은이 같은 파일 이름을 얻을 수 있습니다 :

var ap = Log.Logger.Repository.GetAppenders().First(a => a is FileAppender) as FileAppender; 

FileDatePattern 특성을 가지고 있습니다.

관련 문제