您的位置:首页 > 其它

Log4net日志库使用Demo

2016-02-01 23:58 525 查看
最近一直在做C#的项目,用到log4net这个日志库,把主要代码段记录一下:

我用的DLL可以在这里下载:下载

定义一个日志管理类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using log4net;
using log4net.Config;
using System.IO;

namespace Test
{
public static class AppLog
{
private static ILog log;

static AppLog()
{
XmlConfigurator.ConfigureAndWatch(new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "config.xml"));
log = LogManager.GetLogger(typeof(AppLog));
}

public static void Debug(object message)
{
log.Debug(message);
}

public static void DebugFormatted(string format, params object[] args)
{
log.DebugFormat(format, args);
}

public static void Info(object message)
{
log.Info(message);
}

public static void InfoFormatted(string format, params object[] args)
{
log.InfoFormat(format, args);
}

public static void Warn(object message)
{
log.Warn(message);
}

public static void Warn(object message, Exception exception)
{
log.Warn(message, exception);
}

public static void WarnFormatted(string format, params object[] args)
{
log.WarnFormat(format, args);
}

public static void Error(object message)
{
log.Error(message);
}

public static void Error(object message, Exception exception)
{
log.Error(message, exception);
}

public static void ErrorFormatted(string format, params object[] args)
{
log.ErrorFormat(format, args);
}

public static void Fatal(object message)
{
log.Fatal(message);
}

public static void Fatal(object message, Exception exception)
{
log.Fatal(message, exception);
}

public static void FatalFormatted(string format, params object[] args)
{
log.FatalFormat(format, args);
}
}
}
日志管理类的config.xml文件可以写成这样:(放在可执行文件的同级目录下)

<log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="log\logfile.log"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="yyyyMMdd"/>
<maxSizeRollBackups value="10"/>
<maximumFileSize value="1MB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
</appender>
<root>
<level value="All"/>
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
记日志也很简单:例如:

AppLog.Error(ex.ToString());


生成的日志log/logfile.log类似:

2016-02-01 17:25:54,121 [10] DEBUG Sync.Utility.AppLog [(null)] - 用户登录成功!2016/2/1 17:25:54
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: