Log4Net 最最最基本的应用。作为个人记录
本文只记录了将日志按照日期记录到文件中的方法。
注:1.如果将该方法封装在类库中,在引用类库的项目中添加配置文件。
2.如果程序为控制台程序、winfrom程序,需将配置文件存放在/bin/debug/中。
1.引用 Log4Net.dll
2.在项目AssemblyInfo.cs中添加
[assembly:log4net.Config.XmlConfigurator(ConfigFile="Log4Net.config",Watch=true)]
其中ConfigFile为配置文件存放位置。
3.编写配置文件Log4Net.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<log4net>
<logger name="ErrorLog">
<appender-ref ref="ErrorLog"></appender-ref>
</logger>
<appender name="ErrorLog" type="log4net.Appender.RollingFileAppender">
<param name="File" value="MainLog/" />
<param name="AppendToFile" value="true" />
<!--是否默认文件名-->
<param name="StaticLogFileName" value="false" />
<!--变换的形式为日期-->
<rollingStyle value="Date" />
<!--日期的格式,每天换一个文件记录-->
<datePattern value="yyyyMMdd.TXT" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
</layout>
</appender> <logger name="InfoLog">
<level value="INFO"></level>
<appender-ref ref="InfoLog"></appender-ref>
</logger>
<appender name="InfoLog" type="log4net.Appender.RollingFileAppender">
<param name="File" value="InfoLog\\" />
<param name="AppendToFile" value="true" />
<!--是否默认文件名-->
<param name="StaticLogFileName" value="false" />
<!--变换的形式为日期--> <rollingStyle value="Date" /> <!--日期的格式,每天换一个文件记录--> <datePattern value="yyyyMMdd.TXT" /> <layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
</layout>
</appender> <logger name="WarnLog">
<level value="INFO"></level>
<appender-ref ref="WarnLog"></appender-ref>
</logger>
<appender name="WarnLog" type="log4net.Appender.RollingFileAppender">
<param name="File" value="WarnLog\\" />
<param name="AppendToFile" value="true" />
<!--是否默认文件名-->
<param name="StaticLogFileName" value="false" />
<!--变换的形式为日期--> <rollingStyle value="Date" /> <!--日期的格式,每天换一个文件记录--> <datePattern value="yyyyMMdd.TXT" /> <layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
</layout>
</appender> <logger name="FatalLog">
<level value="INFO"></level>
<appender-ref ref="FatalLog"></appender-ref>
</logger>
<appender name="FatalLog" type="log4net.Appender.RollingFileAppender">
<param name="File" value="FatalLog\\" />
<param name="AppendToFile" value="true" />
<!--是否默认文件名-->
<param name="StaticLogFileName" value="false" />
<!--变换的形式为日期--> <rollingStyle value="Date" /> <!--日期的格式,每天换一个文件记录--> <datePattern value="yyyyMMdd.TXT" /> <layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
</layout>
</appender> </log4net> </configuration>
4.程序中使用
log4net.ILog _errorLog = log4net.LogManager.GetLogger("ErrorLog");
//ErrorLog 为 Log4Net.config中logger设置的
_errorLog .Warn("错误信息");
Log4Net 最最最基本的应用。作为个人记录的更多相关文章
- 如何使用Apache log4net库与ASP.NET MVC 5日志记录
在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法. 简介: 在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法.尤其在应用程序出错的时候,日志是我们最需要的文件.不管是在web,wi ...
- 如何配置Log4Net使用Oracle数据库记录日志
最近在做一个项目的时候,需要增加一个日志的功能,需要使用Log4Net记录日志,把数据插入到Oracle数据库,经过好久的研究终于成功了.把方法记录下来,以备以后查询. 直接写实现方法,分两步完成: ...
- Log4net按照不同级别写入多个日志文件
[assembly: log4net.Config.XmlConfigurator(Watch = true)]//注入 在一个Web应用项目中,我使用了Fluent NHibernate作为数据访问 ...
- (转)非常完善的Log4net详细说明
转自:http://www.cnblogs.com/zhangchenliang/p/4546352.htmlhttp://www.cnblogs.com/zhangchenliang/p/45463 ...
- 非常完善的Log4net详细说明
4.1.6 <filter> 过滤器,只能作为<appender>的子元素. 支持的属性: type 必须的,Filter的类型 支持的子元素: param 0个或多个, ...
- Log4net使用(二)
日志记录到根目录Log文件夹,文件夹中分LogError与LogInfo文件夹 web.config配置: <configSections> <section name=" ...
- log4net详解(转载)
1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.本文主要是介绍如何在Visual S ...
- log4net详细配置说明
原文地址:http://blog.sina.com.cn/s/blog_671486bc01011rdj.html 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记 ...
- Log4net介绍
一.Log4net介绍 log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括MS Server,Access, ...
随机推荐
- 洛谷——P2371 EXCEEDED WARNING C(50)
P2371 EXCEEDED WARNING C 题目背景 第三道溢出警告... 机(wei)智(suo)的TMXi又搬题来坑大家了... 注意时空限制[坏笑] 题目描述 [li]1949年,阿三的数 ...
- 22、Flask实战第22天:Flask信号
Flask中的信号使用的是一个第三方插件blinker.通过pip list看一下是否安装,如果没有,则使用如下命令安装 pip install blinker 自定义信号 自定义信号分为3步: ①定 ...
- Html5+CSS
1. 内联样式是为元素添加样式的最简单有效的方式,但是更易于维护的方式是使用层叠样式表CSS(Cascading Style Sheets). <style> 选择器 {属性名称: 属性 ...
- c程序设计语言 导言
重在实践!! 1-10 P13 #include <stdio.h> int main() { int c; while((c = getchar()) != EOF) { ; if (c ...
- [BZOJ3206][APIO2013]道路费用(最小生成树)
3206: [Apio2013]道路费用 Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 568 Solved: 266[Submit][Status ...
- ZOJ 3949 Edge to the Root(树形DP)
[题目链接] http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3949 [题目大意] 给出一棵根为1的树,每条边边长为1,请你 ...
- 【kruscal】【最小生成树】【搜索】bzoj1016 [JSOI2008]最小生成树计数
不用Matrix-tree定理什么的,一边kruscal一边 对权值相同的边 暴搜即可.将所有方案乘起来. #include<cstdio> #include<algorithm&g ...
- 【莫队算法】bzoj3289 Mato的文件管理
莫队算法,离线回答询问,按一定大小(sqrt(n*log(n))左右)将答案分块,按 ①左端点所在块②右端点 双关键字排序. 然后暴力转移. 转移的时候用树状数组. O(n*sqrt(n)*log(n ...
- 1.4(学习笔记)JSP自定义标签
一.JSP自定义标签 JSP自定义标签,可以通过实现Tag接口.继承TagSupport类来设置标签功能. 后续通过配置文件将标签和具体的实现类关联. 二.自定义第一个标签(实现Tag接口) 自定义标 ...
- golang设计模式-成员变量赋值
常见golang的struct赋值有两种: 1)定义变量同时初始化 val := &Options{ UID:int(1), } 2)先定义变量,再赋值 val := new(Options) ...