log4net 일기 파일 경로 동적 설정
10633 단어 log
1.문서 구성
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
<!-- ; , LogManager.GetLogger(name) ,name Client_LogType_logger-->>
<file value="logs/%Client/%LogType/" />
<!-- -->
<appendToFile value="true" />
<!-- ,-1 -->
<MaxSizeRollBackups value="-1" />
<!-- -->
<MaximumFileSize value="1MB"/>
<encoding value="utf-8" />
<!-- :data /Size /Composite -->
<rollingStyle value="Composite" />
<!-- -->
<datePattern value=""log_"yyyyMMdd".log"" />
<!-- , -->
<StaticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date %-5level [%thread] %newline%message%newline----------------------------------------%newline"/>
</layout>
</appender>
<logger name="Test">
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
</logger>
2.호출
using log4net;
using System.Collections.Generic;
namespace Log4netTest
{
public class LogHelper
{
//
public static Dictionary<string, ILog> LogDic = new Dictionary<string, ILog>();
static object _islock = new object();
public static ILog GetLog(string name)
{
try
{
if (LogDic == null)
{
LogDic = new Dictionary<string, ILog>();
}
lock (_islock)
{
if (!LogDic.ContainsKey(name))
{
LogDic.Add(name, LogManager.GetLogger(name));
}
}
return LogDic[name];
}
catch
{
return LogManager.GetLogger("Default");
}
}
public static void Debug(string client, string name, object message)
{
// : _ _logger ;<file value="logs/%Client/%LogType/" />
//value <file value="logs/%LogType/" />;
// ,name Test : _Debug_Test
var log = GetLog(string.Format("{0}_Debug_{1}", client, name));
if (log == null)
{
return;
}
log.Debug(message);
}
public static void Error(string client, string name, object message)
{
var log = GetLog(string.Format("{0}_Error_{1}", client, name));
if (log == null)
{
return;
}
log.Error(message);
}
}
}
log4net.dll
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로그인 기판 사용기판 팔레트에 로그인하는 방법 및 노드를 실행할 때 로그를 보는 방법(디버깅할 때 polkadot에서 기존 로그를 보는 데 유용할 수 있음). 팔레트/템플릿의 Cargo.toml에서 통나무 상자 가져오기 팔레트 템플...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.