webAPI中使用log4net進行日志記錄


1.從nuget下載log4net

2.根據需求配置web.config,或者另外寫一個log4net.config文件,各個節點的意義詳細查詢api

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

  <log4net>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <!--日志路徑-->
      <!--<param name="File" value="D:\ElevatorSystem\SafeElevator\SafeElevator\App_Log\servicelog\" />-->
      <param name="File" value="App_Log\" />
      <!--是否是向文件中追加日志-->
      <param name="AppendToFile" value="true" />
      <!--log保留天數-->
      <param name="MaxSizeRollBackups" value="10" />
      <!--日志文件名是否是固定不變的-->
      <param name="StaticLogFileName" value="false" />
      <!--日志文件名格式為:2008-08-31.log-->
      <param name="DatePattern" value="yyyy-MM-dd&quot;.read.log&quot;" />
      <!--日志根據日期滾動-->
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n %loggername" />
      </layout>
    </appender>

    <!--root是一個父級的logger,所有Logger列表的形式寫在里面,相當於多個looger分開定義-->
    <root>
      <!--(高) OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL (低) -->
      <level value="all" />
      <!--<appender-ref ref="ColoredConsoleAppender"/>-->
      <appender-ref ref="RollingLogFileAppender" />
    </root>
  </log4net>

3.

在WebApiConfig.cs 中加上(也可以在global中加)

log4net.Config.XmlConfigurator.Configure();       //啟用log4net配置

4.新增loghelper類

 public class LogHelper
    {
        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger("LogHelper");

        public static void WriteLog(string msg)

        {

            logger.Info(msg);

        }
    }

4.調用

LogHelper.WriteLog("hello can you hear me~");

也可以將記錄日志的操作寫到過濾器里面,就不用每個api 都寫一遍記錄日志


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM