.net core日誌記錄

.net core日誌記錄

日誌是必須的,目前採用log4net進行日誌記錄。app

定義通用的日誌記錄方法.net

public static class Log4NetFunc
{
    private static log4net.ILog logger = null;
    private static object locker = new object();

    private static void InitLogger()
    {
        lock (locker)
        {
            if (logger == null)
            {
                ILoggerRepository repository = LogManager.CreateRepository("repos");
                XmlConfigurator.Configure(repository, new FileInfo("log4net.config"));
                logger = log4net.LogManager.GetLogger(repository.Name, "logger");
            }
        }
    }

    public static log4net.ILog LOGGER
    {
        get
        {
            if (logger == null)
            {
                InitLogger();
            }
            return logger;
        }
    }
}

配置文件日誌

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net-net-1.0"/>
  </configSections>
  <log4net>
    <!--console log-->
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout" value="%date [%thread] %-5level %logger - %message%newline" />
    </appender>
    <root name="logger">
      <level value="ALL" />
      <appender-ref ref="ConsoleAppender" />
    </root>
  </log4net>
</configuration>

日誌記錄code

Log4NetFunc.LOGGER.Debug("程序已啓動");
相關文章
相關標籤/搜索