log4net创建日志
2016-02-17 13:11
295 查看
整了一上午,终于还是成功的输出了日志文件,在这里记录一下log4net下载地址:http://logging.apache.org/log4net/download_log4net.cgi (下载那个bin文件就可以了,不管是newkey还是oldkey都可以)这里主要记录一下在asp.net环境下的log4net使用。1、引入log4net.dll文件。(不同.net环境有不同的版本,选择相应的版本的dll即可)2、配置文件。一种方式是在Web.config里面配置,这种方式我个人不太建议,所以写下第二种方式新建一个log4net.config文件,填入内容如下:
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <log4net> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="log/log.txt" /><!--文件的输出路径--> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value=".yyyyMMdd" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="1MB" /> <!--layout是日志输出格式的定义--> <layout type="log4net.Layout.PatternLayout"> <!--%d, %date :表示当前的时间;%level :表示日志的级别;%logger, %c:表示日志产生的主题,通常是所在的类名,便于定位问题; %t, %thread: 表示所在进程;%L:表示产生日志的代码所在的行数;%m, %message :表示日志的具体内容;%n, %newline: 换行--> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> </layout> </appender> <root> <!--log4net的日志记录分为7级,从高到低为: OFF、FATAL、ERROR, WARN, INFO, DEBUG, ALL--> <!--不同的日志记录级别对应输出不同类型的日志,建议使用ALL,输出所有类型的日志--> <level value="ALL" /> <appender-ref ref="RollingLogFileAppender"/><!--这里的ref映射上面appender中的name,需名称保持一致--> </root> </log4net> </configuration>3、在AssemblyInfo.cs 中加入
[assembly: log4net.Config.XmlConfigurator(ConfigFile="log4net.config", Watch=true)]
//log4net.config 是配置文件的名称,可以自行设置 //Watch 是表示在程序运行期间是否监视该配置文件的变动4、在global.asax.cs中
protected void Application_Start(Object sender, EventArgs e) { //配置log4net log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo("log4net.config")); }
5、在任何一个类中我们都可以采用这样的方式来调用
ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
log.Error("这是一个错误日志"); log.Fatal("这是一个致命的错误日志"); log.Warn("这是一条警告日志"); log.Info("这是一条普通信息");补充:
单纯的用一个文件来保存所有的内容肯定是不太好的,所有我选择按日期来动态创建,配置文件可以修改成如下:
<file value="./log/" /><!--文件的输出路径--> <appendToFile value="true" /> <rollingStyle value="Date" /> <datePattern value="yyyyMMdd".log"" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="1MB" /> <staticLogFileName value="false" />
其他内容与上面保持一直,只需要修改部分配置参数即可。
相关文章推荐
- 获取某路径下所有文件
- 未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项(解决)
- nyoj--496--巡回赛(拓扑排序)
- 为了忘记
- setValue 和 setObject 的区别
- for循环遍历字符串的还有一种方法
- fiddler
- QT学习二:工具栏
- svn checkout单个文件(refers to a file, not a directory)
- mysql创建函数示例
- 对任务执行目标数据
- 【SPOJ-MIFF】Matrix inverse【高斯消元】
- Android闪光灯开关
- 有感于小米官网的中英文版本号的差异
- 动态加载JavaScript文件
- 沙盒(SandBox)
- Wamp安装redis扩展和window安装redis-service(此文只针对学习redis)
- JS寻找公共项
- UML--状态图、活动图
- @Override覆盖不了spring-web.jar中的方法