log4net在C#项目里的配置

做个记录,这个可用。每次新项目配置从网上找来的都要配半天

这里不说这是什么,从哪来,为什么这样配置

App.config或其他.config文件里加入如下配置

<log4net>
    <!-- Console部分log输出格式的设定 -->
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date %-5level - %message%newline"/>
      </layout>
    </appender>
    <!-- 日志文件部分log输出格式的设定 -->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="LogsLog_"/>
      <appendToFile value="true"/>
      <rollingStyle value="Date"/>
      <datePattern value="yyyyMMdd'.txt'"/>
      <staticLogFileName value="false"/>
      <layout type="log4net.Layout.PatternLayout">
        <header value=""/>
        <ConversionPattern value="%date %-5level - %message%newline"/>
      </layout>
    </appender>

    <!-- Setup the root category, add the appenders and set the default level -->
    <root>
      <level value="ALL"/>
      <appender-ref ref="ConsoleAppender"/>
      <appender-ref ref="RollingLogFileAppender"/>
    </root>
  </log4net>

Properties下AssemblyInfo.cs里加入

[assembly: log4net.Config.XmlConfigurator(Watch = true)]  

再添加一个静态公共类

调用就很简单了

Log.Error()  

 public static class Log
    {
        public static ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

        public static void Debug(string str)
        {
            m_log.Debug(str);
        }

        public static void Info(string str)
        {
            m_log.Info(str);
        }

        public static void Error(string str)
        {
            m_log.Error(str);
        }

        public static void Fatal(string str)
        {
            m_log.Fatal(str);
        }

        public static void Warn(string str)
        {
            m_log.Warn(str);
        }
    }
原文地址:https://www.cnblogs.com/jhlong/p/7520455.html