log4net的初使用
来源:互联网 发布:maya软件基础教程 编辑:程序博客网 时间:2024/05/22 03:49
最近在写一些C#的程序,想找一个记录日志的软件,当然会想起在java中大名鼎鼎的log4j,查了一下还真的发现有.net版的,就上网找了一些资料学了一下,把它用起来再说,用法很简单,只要把Log4Net.dll加入工程中,然后在App.config添加如下配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<!--定义输出到文件中-->
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<!--定义文件存放位置-->
<file value="log.log" />
<layout type="log4net.Layout.PatternLayout">
<!--每条日志末尾的文字说明-->
<footer value="[Footer]--Test By Ring1981 " />
<!--输出格式
每种转换符号都以%开始,后面跟着一个格式符号和换符号。
%-数字 :该项的最小长度,小于最小长度的用空格填充
%m(message):输出的日志消息
%n(new line):换行
%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称,
%L(line ):输出语句所在的行号
%F(file name):输出语句所在的文件名
%logger 日志名称
-->
<conversionPattern value="时间:%date [线程:%thread] %-5level [类:%c][%L行]%n %-5level:%message%newline" />
</layout>
</appender>
<!--定义输出到控制台命令行中-->
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!--conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /-->
<conversionPattern value="时间:%date [线程:%thread] %-5level [类:%c][%L行]%n %-5level:%message%newline" />
</layout>
</appender>
<!--定义输出到windows事件中-->
<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<!--RollingFileAppender是输出源也是输出到文件中,只是以自增长的方式-->
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="log/system_log_"/>
<!--是否覆盖-->
<param name="AppendToFile" value="true"/>
<!--设置无限备份=-1 ,最大备份数为1000-->
<param name="MaxSizeRollBackups" value="100"/>
<!--每个文件的最大20k-->
<param name="MaximumFileSize" value="1KB"/>
<!--名称是否可以更改 为false为可以更改-->
<param name="StaticLogFileName" value="false"/>
<!--文件名称-->
<param name="DatePattern" value="yyyyMMdd".log""/>
<param name="RollingStyle" value="Date"/>
<layout type="log4net.Layout.PatternLayout">
<!--conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %SysMessage%newline" /-->
<conversionPattern value="时间:%date [线程:%thread] %-5level [类:%c][%L行]%n %-5level:%message%newline" />
</layout>
</appender>
<!--定义日志的输出媒介,下面定义日志以四种方式输出。也可以下面的按照一种类型或其他类型输出。-->
<root>
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
<appender-ref ref="EventLogAppender" />
<appender-ref ref="RollingLogFileAppender" />
</root>
</log4net>
</configuration>
然后在AssemblyInfo.cs文件最后加入[assembly: log4net.Config.DOMConfigurator()]即可用了
示例:
class Program
{
private static ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
static void Main(string[] args)
{
log.Debug("测试日志");
log.Info("测试日志");
log.Warn("测试日志");
Console.Read();
}
}
运行效果:
- log4net的初使用
- Log4net的配置使用
- Log4net的配置使用
- log4net的使用
- LOG4NET的使用
- Log4net的使用
- Log4net的使用
- Log4Net的使用
- log4net的配置使用
- Log4Net的使用
- Log4Net的配置使用
- Log4net的使用
- Log4net的使用
- Log4net的使用
- log4net的使用
- log4net的使用
- Log4Net的使用
- C# Log4net的使用
- 2010-12-2
- WebService 动态调用帮助类
- vs2008配置opengl
- database-concurrency control-notes
- opengl
- log4net的初使用
- 序
- 模块性:保持清晰,保持简洁 1(unix编程艺术摘录)
- Windows PowerShell 2.0语言开发之脚本签名
- 仙境传说 第一章之一 卢渊*岛上夕阳
- log4net日志组件经验分享
- 上传文件是 form表单需要设置一个属性值enctype
- C核心技术手册(八)
- Jquery ajax 实现两级下拉菜单联动