• C#Log4net记录日志


    1、下载log4net地址:http://logging.apache.org/log4net/download_log4net.cgi

    下载log4net-2.0.8-bin-oldkey.zip到本地,根据自己的需求选择一个合适的log4net.dll版本即可。

    2、log4net.dll放在 inRelease或者 inDebug下。

    3、解决方案下的引用中去引用该dll。

    4、添加一个App.config,可网上查询添加的节点。这里添加一个我自己可以用的。

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
        </startup>
      <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
      </configSections>
      <!--日志-->
      <log4net>
        <logger name="Logerror">
          <level value="ALL"/>
          <appender-ref ref="Log_error"/>
        </logger>
        <logger name="Loginfo">
          <level value="DEBUG"/>
          <appender-ref ref="Log_info"/>
        </logger>
        <!--<logger name="logconsole">
          <level value="INFO" />
          <appender-ref ref="ConsoleAppender" />
        </logger>-->
        <!--信息日志-->
        <appender name="Log_error" type="log4net.Appender.RollingFileAppender">
          <!--定义日志存放位置-->
          <param name="File" value="E:Logserror.log"/>
          <param name="DatePattern" value="yyyyMMdd"/>
          <param name="AppendToFile" value="true"/>
          <param name="MaxSizeRollBackups" value="100"/>
          <param name="MaximumFileSize" value="1MB"/>
          <param name="RollingStyle" value="Size"/>
          <param name="StaticLogFileName" value="true"/>
          <layout type="log4net.Layout.PatternLayout">
            <!--输出格式-->
            <param name="ConversionPattern" value="%-5level %date %file %type %method() %line %message %n"/>
          </layout>
        </appender>
        <appender name="Log_info" type="log4net.Appender.RollingFileAppender">
          <param name="File" value="E:Logsinfo.log"/>
          <param name="DatePattern" value="yyyyMMdd"/>
          <param name="AppendToFile" value="true"/>
          <param name="MaxSizeRollBackups" value="100"/>
          <param name="MaximumFileSize" value="1MB"/>
          <param name="RollingStyle" value="Size"/>
          <param name="StaticLogFileName" value="true"/>
          <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%-5level %d [%c] %m%n"/>
          </layout>
          <filter type="log4net.Filter.LevelRangeFilter">
            <param name="LevelMin" value="INFO"/>
            <param name="LevelMax" value="ERROR"/>
          </filter>
        </appender>
      </log4net>
    </configuration>

    5、AssemblyInfo.cs中最后一句添加[assembly: log4net.Config.XmlConfigurator(ConfigFileExtension = "config", Watch = true)],否则的话不能写入日志。

    6、winform中可以单独建一个类用于存放log4net的实例化。

    当然了需要注意的是log4net.LogManager.GetLogger("Logerror和Loginfo")中的“MSgLogger”要与App.config中相对应。

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 
     7 namespace demo
     8 {
     9     class Loghelper
    10     {
    11         public static log4net.ILog logerror = log4net.LogManager.GetLogger("Logerror");
    12         public static log4net.ILog loginfo = log4net.LogManager.GetLogger("Loginfo");
    13     }
    14     
    15 }

    7、测试一下

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace demo
    {
        public partial class Form1 : Form
        {
            
            public Form1()
            {
                InitializeComponent();
                Loghelper.loginfo.Info("ssss");
                Loghelper.logerror.Info("Look look error log.");
    
            }
        }
    }

    8、大功告成

    喝的不是酒,是心痛;抽的不是烟,是忧愁;
  • 相关阅读:
    Linux下防火墙的相关命令
    java中的异常总结
    Java中的==和equals的区别
    一个简单的前后端分离项目,适合新手练手
    入住博客园鸭
    centos7 安装 Python PIL模块
    Linux 装机错误解决
    Python 爬取煎蛋网妹子图片代码
    Python 简易聊天机器人
    Python员工信息表练习
  • 原文地址:https://www.cnblogs.com/javier520/p/9957894.html
Copyright © 2020-2023  润新知