log4net : 롤링 파일 appender, 확장을 정의하십시오
-
03-07-2019 - |
문제
내 로그 파일이 다음과 같이 보이기를 원합니다 : 2009-02-13.log
그러나 문제는 .log 확장자를 추가하는 방법을 찾을 수 없다는 것입니다.
나는 많은 것을 시도했지만 아무것도 도움이되지 않습니다. 이것이 내가 지금까지 가지고있는 것입니다.
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="Logs/Log4Net/.log"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
</appender>
해결책
날짜 패턴에 .log 확장을 추가하고 파일 속성에서 제거하십시오.
<datePattern value="yyyy-MM-dd.lo\g"/>
...
<staticLogFileName value="false" />
다른 팁
"G"는 DatePattern의 특별한 캐릭터이기 때문에 다른 대답은 "log"에서 "g"를 탈출합니다. 이것은 잘못된 것이 아니지만, 비 데이트 문자의 전체 세트를 단일 따옴표로 랩핑하는 것을 선호합니다.
<datePattern value="yyyy-MM-dd'.log'" />
이것은 동일한 결과를 제공하지만 관리하기가 더 쉽습니다. 이런 식으로 DatePattern을 위해 어떤 특정 문자가 특별한지를 기억할 필요가 없습니다 (목록은 길고 다양합니다). 하나의 캐릭터를 잊어 버리면 파일 이름을 borking 할 위험이 없습니다. 그들은 모두 멋지게 탈출했습니다.
Log4net은 이제 a PreserveLogFileNameExtension
.log 확장자가 복합 파일 이름의 끝까지 강제로 강제 할 수있는 속성 (날짜 패턴 및/또는 크기 시퀀스 번호 포함) :
<file value="LogFiles/.log"/>
<preserveLogFileNameExtension value="true" />
<datePattern value="yyyy-MM-dd" />
DatePattern의 끝에 ".lo g"를 추가하십시오.
내 로그 파일 XML 구성입니다. 로그 파일의 경로는 "파일"태그에 있습니다.
로그 파일 "2012-11-22.log"가 내 웹 사이트의 경로 폴더에있는 폴더 "로그 파일"아래에 생성됩니다.
참고 : 폴더가 먼저 존재하는지 확인하십시오!
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<root>
<level value="INFO"/>
<appender-ref ref="RollingFileAppender"/>
</root>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="LogFiles/"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<maxSizeRollBackups value="5"/>
<maximumFileSize value="10MB"/>
<datePattern value="yyyy-MM-dd'.log'" />
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger - %message%newline%exception"/>
</layout>
</appender>
</log4net>
</configuration>