log4net快速使用流程

本文详细介绍了如何使用log4net进行日志记录,包括Nuget安装、配置文件设置、代码示例及如何在控制台和文件中查看日志信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下内容大部分来自这里,对原作者流子表示感谢

1、Nuget安装,当前版本2.0.8

2、创建log4net.config文件,文件内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <log4net debug="true">
    <root>
      <level value="DEBUG" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="ConsoleAppender" />
    </root>
    <appender name="ConsoleAppender"  type="log4net.Appender.ConsoleAppender" >
      <layout type="log4net.Layout.PatternLayout">
       <conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
      </layout>
    </appender>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="game" />
      <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
      <param name="AppendToFile" value="true" />
      <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
      </layout>
    </appender>
  </log4net>
</configuration>
View Code

注意:要在文件属性中将“复制到输出目录”选项设置为“如果较新则复制”

3、在文件AssemblyInfo.cs中加上:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]

4、代码用法:

using log4net;
private static readonly ILog logger = LogManager.GetLogger(typeof(GameClient));  
Thread.CurrentThread.Name = "main";//为了将主线程名与其他线程区别开
//初始化log4net
log4net.Config.XmlConfigurator.Configure();
logger.Debug("初始化连接开始");
logger.InfoFormat("测试日志 name={0}","client");

5、输出结果:

[2017-08-11 20:18:19,350] DEBUG [main][GameClient:24] - 初始化连接开始
[2017-08-11 20:18:19,363] DEBUG [main][GameClient:28] - 初始化连接完毕
[2017-08-11 20:18:19,364] INFO [main][SuperSocketDemo:35] - 测试日志 name=client

 UPDAT:

不知道为什么代码不能编辑了,只能暂时放在下面。

如果需要通过DebugView这类的工具查看Trace信息,配置内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <log4net debug="true">
    <root>
      <level value="DEBUG" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="ConsoleAppender" />
      <appender-ref ref="TraceAppender" />
    </root>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="LoadOrderInterface.log" />
      <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
      <param name="AppendToFile" value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
      </layout>
    </appender>
    <appender name="ConsoleAppender"  type="log4net.Appender.ConsoleAppender" >
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
      </layout>
    </appender>
    <appender name="TraceAppender" type="log4net.Appender.TraceAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date %level [%thread] %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
  </log4net>
</configuration>
View Code

 

转载于:https://www.cnblogs.com/s5689412/p/10123907.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值