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="&quot;.&quot;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

转载于:https://www.cnblogs.com/LoveJenny/p/LoggingWithLog4net.html

Logging with Log4net (二)相关推荐

  1. C# 日志管理框架:Common.Logging和log4net

    01 - DLL引用 ‍common logging是一个通用日志接口框架,log4net是一个强大的具体实现框架. common logging可以把输出连接到其他非log类上, 如EntLib的日 ...

  2. log4net保存到数据库系列二:独立配置文件中配置log4net

    园子里面有很多关于log4net保存到数据库的帖子,但是要动手操作还是比较不易,从头开始学习log4net数据库日志一.WebConfig中配置log4net 一.WebConfig中配置log4ne ...

  3. Log4net详细说明

    转载于:https://blog.csdn.net/binnygoal/article/details/79557746 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4n ...

  4. C# Asp.Net6 MVC,Log4net NLog 日志插件应用 及Windows、Liux环境下程序发布

    C# Asp.Net6 MVC,Log4net NLog 日志插件应用 及Windows.Liux环境下程序发布 一. MVC含义 二.数据传输 1.控制器向视图传输数据 三.日志组件Log4net ...

  5. dotnet core 6.0 配置使用log4net

    开发工具 vs2022社区版,.net 6.0 一.NuGet添加 Microsoft.Extensions.Logging.Log4Net.AspNetCore 二.在项目根目录添加log4net. ...

  6. DRP问题集结(一)-Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory...

    问题一:  Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory 问题二:[Error]Jav ...

  7. 在C#代码中应用Log4Net 中配置文件的解释

    一个完整的配置文件的例子如下所示,这个是"在C#代码中应用Log4Net(二)"中使用的配置文件. <log4net><!-- 错误日志类--><lo ...

  8. Log4net 配置使用总结(一)

    博客园里面关于Log4net配置介绍的文章已经很多了,本篇想对Log4net做一个整体.全面的介绍.一来整理一下自己在学习.配置中遇到的一些问题.二来梳理.总结一下这方面的知识.所以下面相当一部分是从 ...

  9. (转)PowerHA完全手册(一,二,三)

    PowerHA完全手册(一) 原文:http://www.talkwithtrend.com/Article/39889-----PowerHA完全手册(一) http://www.talkwitht ...

最新文章

  1. python填写excel-Python玩转Excel的读写改实例
  2. Android Camera 系统架构源码分析
  3. Oracle dbtimezone与os时区不一致的解决办法
  4. JavaScript 第三课 DOM
  5. php企业黄页源码,PHPCMS 企业黄页模块 v9 GBK 正式版
  6. 信息安全工程师-AES密码技术及XOR图像遮盖技术(JavaC++)
  7. VBA中Let与Set的区别
  8. mitmproxy安装证书_在 macOS 上使用 mitmproxy 透明代理进行网络抓包
  9. hdu 1284 dp
  10. 少数民族预科计算机基础教材答案,少数民族预科高等数学(普通高等学校少数民族预科教材)...
  11. win7原版镜像_封装二:Win7 预装软件 Setup 包集成方法
  12. python的学习笔记案例1--汇率兑换5.0
  13. 6岁女孩出口之乎者也 用《论语》典故批评妈妈
  14. 北理计算机优营会被鸽吗,被放鸽子以后~
  15. 一文看透 Kotlin 协程本质
  16. Photo2Cartoon,照片图片批量转漫画
  17. Julia开发工具Atom+Juno的安装与使用
  18. js关闭当前窗口、标签页
  19. JVM性能调优3_垃圾收集器与内存分配策略__享学课堂
  20. python词云图实验报告_Python实现Wordcloud生成词云图的示例

热门文章

  1. tableau使用需要收费吗_使用苹果手机时,这些需要注意的点,你都知道吗?
  2. 正则截取指定字符串 php,php截取指定字符串除了正则还有什么方法
  3. onedrive目录PHP源码,另一个OneDrive目录索引应用 OLAINDEX
  4. birt预览能有内容发布后没内容_谷歌突然推出Android 11开发者预览版 新版带来部分新功能和改进...
  5. Java设计模式(七):适配器设计模式
  6. java执行jar中的main_浅谈java 执行jar包中的main方法
  7. 切客软件诞生,给切客全新的购物消费体验
  8. [转帖]oracle改版sql server问题点汇总
  9. JAVA Cloud微服务项目实战课程 SpringBoot 2.x +SpringCloud 微服务课程
  10. Domain Model