Logging with Log4net (二)
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
转载于:https://www.cnblogs.com/LoveJenny/p/LoggingWithLog4net.html
Logging with Log4net (二)相关推荐
- C# 日志管理框架:Common.Logging和log4net
01 - DLL引用 common logging是一个通用日志接口框架,log4net是一个强大的具体实现框架. common logging可以把输出连接到其他非log类上, 如EntLib的日 ...
- log4net保存到数据库系列二:独立配置文件中配置log4net
园子里面有很多关于log4net保存到数据库的帖子,但是要动手操作还是比较不易,从头开始学习log4net数据库日志一.WebConfig中配置log4net 一.WebConfig中配置log4ne ...
- Log4net详细说明
转载于:https://blog.csdn.net/binnygoal/article/details/79557746 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4n ...
- C# Asp.Net6 MVC,Log4net NLog 日志插件应用 及Windows、Liux环境下程序发布
C# Asp.Net6 MVC,Log4net NLog 日志插件应用 及Windows.Liux环境下程序发布 一. MVC含义 二.数据传输 1.控制器向视图传输数据 三.日志组件Log4net ...
- dotnet core 6.0 配置使用log4net
开发工具 vs2022社区版,.net 6.0 一.NuGet添加 Microsoft.Extensions.Logging.Log4Net.AspNetCore 二.在项目根目录添加log4net. ...
- DRP问题集结(一)-Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory...
问题一: Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory 问题二:[Error]Jav ...
- 在C#代码中应用Log4Net 中配置文件的解释
一个完整的配置文件的例子如下所示,这个是"在C#代码中应用Log4Net(二)"中使用的配置文件. <log4net><!-- 错误日志类--><lo ...
- Log4net 配置使用总结(一)
博客园里面关于Log4net配置介绍的文章已经很多了,本篇想对Log4net做一个整体.全面的介绍.一来整理一下自己在学习.配置中遇到的一些问题.二来梳理.总结一下这方面的知识.所以下面相当一部分是从 ...
- (转)PowerHA完全手册(一,二,三)
PowerHA完全手册(一) 原文:http://www.talkwithtrend.com/Article/39889-----PowerHA完全手册(一) http://www.talkwitht ...
最新文章
- python填写excel-Python玩转Excel的读写改实例
- Android Camera 系统架构源码分析
- Oracle dbtimezone与os时区不一致的解决办法
- JavaScript 第三课 DOM
- php企业黄页源码,PHPCMS 企业黄页模块 v9 GBK 正式版
- 信息安全工程师-AES密码技术及XOR图像遮盖技术(JavaC++)
- VBA中Let与Set的区别
- mitmproxy安装证书_在 macOS 上使用 mitmproxy 透明代理进行网络抓包
- hdu 1284 dp
- 少数民族预科计算机基础教材答案,少数民族预科高等数学(普通高等学校少数民族预科教材)...
- win7原版镜像_封装二:Win7 预装软件 Setup 包集成方法
- python的学习笔记案例1--汇率兑换5.0
- 6岁女孩出口之乎者也 用《论语》典故批评妈妈
- 北理计算机优营会被鸽吗,被放鸽子以后~
- 一文看透 Kotlin 协程本质
- Photo2Cartoon,照片图片批量转漫画
- Julia开发工具Atom+Juno的安装与使用
- js关闭当前窗口、标签页
- JVM性能调优3_垃圾收集器与内存分配策略__享学课堂
- python词云图实验报告_Python实现Wordcloud生成词云图的示例
热门文章
- tableau使用需要收费吗_使用苹果手机时,这些需要注意的点,你都知道吗?
- 正则截取指定字符串 php,php截取指定字符串除了正则还有什么方法
- onedrive目录PHP源码,另一个OneDrive目录索引应用 OLAINDEX
- birt预览能有内容发布后没内容_谷歌突然推出Android 11开发者预览版 新版带来部分新功能和改进...
- Java设计模式(七):适配器设计模式
- java执行jar中的main_浅谈java 执行jar包中的main方法
- 切客软件诞生,给切客全新的购物消费体验
- [转帖]oracle改版sql server问题点汇总
- JAVA Cloud微服务项目实战课程 SpringBoot 2.x +SpringCloud 微服务课程
- Domain Model