C# Logging – Log4Net ( NuGet )

C# Logging – Log4Net ( NuGet )

   web.config
 
   <?xml version="1.0" encoding="utf-8"?>
 
   <configuration>
      <configSections>
         <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
         … …
      </configSections>
      <log4net debug="true">
         <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
            <file value="C:\\TestProj\\TestLog.txt" />
            <appendToFile value="true" />
            <rollingStyle value="Size" />
            <maxSizeRollBackups value="10" />
            <maximumFileSize value="2KB" />
            <staticLogFileName value="true" />
            <layout type="log4net.Layout.PatternLayout">
               <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M – %m%n" />
            </layout>
         </appender>
         <root>
            <level value="DEBUG" />
            <appender-ref ref="RollingLogFileAppender" />
         </root>
      </log4net>
      … …
   </configuration>
 
   Global.asax.cs
 
   using System;
   using System.Collections.Generic;
   using System.Linq;
   using System.Web;
   using System.Web.Http;
   using System.Web.Mvc;
   using System.Web.Optimization;
   using System.Web.Routing;
   using log4net;
 
   namespace CRMPortal
   {
      public class MvcApplication : System.Web.HttpApplication
      {
         protected void Application_Start()
         {
            … …
 
            log4net.Config.XmlConfigurator.Configure();
         }
      }
   }
 
   \Library\logger.cs
 
   using System;
   using System.Collections.Generic;
   using System.Linq;
   using System.Web;
 
   namespace CRMPortal.Library
   {
      public static class Logger
      {
         private static log4net.ILog Log { get; set; }
 
         static Logger()
         {
            Log = log4net.LogManager.GetLogger(typeof(Logger));
         }
 
         public static void Error(object msg)
         {
            Log.Error(msg);
         }
 
         public static void Error(object msg, Exception ex)
         {
            Log.Error(msg, ex);
         }
 
         public static void Error(Exception ex)
         {
            Log.Error(ex.Message, ex);
         }
 
         public static void Info(object msg)
         {
            Log.Info(msg);
         }
      }
   }
 
 
   Logger.Error("Photo Upload");