您的位置:首页 > 其它

Logging with Log4net (二)

2015-06-11 07:49 393 查看
log4net 是.net 的一款日志记录框架。

它提供了很多的方法来帮助记录日志:





使用起来也比较方便:

选中项目,点击右键,然后选择 Manage NuGet Packages...





安装log4net package。





安装好Package 之后,需要用配置文件来配置log4net.

在项目中添加log4net.config 文件,这个配置文件会将日志以xml 的形式记录到 log.xml 中。

代码如下:

<log4net>

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">

<file value="log.xml" />

<appendToFile value="true" />

<datePattern value="yyyyMMdd" />

<rollingStyle value="Date" />

<layout type="log4net.Layout.XmlLayoutSchemaLog4j">

<locationInfo value="true" />

</layout>

</appender>

<root>

<level value="ALL" />

<appender-ref ref="RollingFileAppender" />

</root>

</log4net>

这里有一点要注意,就是需要将log4net.config copy 到bin folder,这样我们的Exe 才能找到这个配置文件。





在Program 的上面添加代码:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
//[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.xml", Watch = true)]
namespace Log4net
{
class Program
{
static void Main(string[] args)
{
}
}
}

或者是:

namespace Log4net
{
class Program
{
static void Main(string[] args)
{
XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net.config"));
}
}
}

配置好之后,我们就可以记录日志了:

下面是我记录的一个





在这里推荐使用EasyLogViewer 来查看日志:

http://www.codeproject.com/Tips/996927/EasyLogViewer-Yet-another-log-viewer-tool-but-Easi





当然还可以将日志文件的形式保存,只要我们更改下log4net.config 就可以了:

<log4net>

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">

<!--日志文件名开头-->

<file value="project.log" />

<!--是否追加到文件-->

<appendToFile value="true" />

<!--混合使用日期和文件大小变换日志文件名-->

<rollingStyle value="Composite" />

<!--日期的格式-->

<datePattern value=""."yyyyMMdd" />

<!--最大变换数量-->

<maxSizeRollBackups value="30" />

<!--最大文件大小-->

<maximumFileSize value="50MB" />

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%d [%t] %-5p %m - [%F:%L]%n" />

</layout>

</appender>

<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%d [%t] %-5p %m%n" />

</layout>

</appender>

<root>

<level value="ALL"></level>

<appender-ref ref="RollingLogFileAppender"></appender-ref>

<appender-ref ref="ConsoleAppender"></appender-ref>

</root>

</log4net>

具体的选项请参考:http://logging.apache.org/log4net/release/config-examples.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: