<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!-- This section contains the log4net configuration settings -->
<log4net>
<!--<appender name="ConsoleAppender" type="log4net.Appender.ColoredConsoleAppender">
<mapping>
<level value="ERROR" />
<foreColor value="Red, HighIntensity" />
</mapping>
<mapping>
<level value="Warn" />
<foreColor value="Yellow,HighIntensity" />
</mapping>
<mapping>
<level value="Info" />
<foreColor value="Green" />
</mapping>
<mapping>
<level value="Debug" />
<foreColor value="Purple, HighIntensity" />
</mapping>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level - %message%newline" />
</layout>
</appender>-->
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout" value="%date [%thread] %-5level %logger - %message%newline" />
</appender>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="log-file.log" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
<file value="Log/Business/" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<RollingStyle value="Date" />
<staticLogFileName value="false" />
<datePattern value="yyyy.MM.dd‘.log‘" />
<!--<maxSizeRollBackups value="10" />
<maximumFileSize value="1MB" />-->
<layout type="log4net.Layout.PatternLayout,log4net">
<ConversionPattern value="%d [%t] %-5p %c - %m%n" />
<Header value="
----------------------Header--------------------------
" />
<Footer value="
----------------------Footer--------------------------
" />
</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="FileAppender" />-->
<appender-ref ref="RollingLogFileAppender" />
</root>
</log4net>
</configuration>
using log4net;
using log4net.Config;
using log4net.Repository;
using System;
using System.IO;
namespace Business.Analysis.Common
{
public class LogHelper
{
private static ILoggerRepository repository { get; set; }
private static ILog _log;
private static ILog log
{
get
{
if (_log == null)
{
Configure();
}
return _log;
}
}
public static void Configure(string repositoryName = "NETCoreRepository", string configFile = "log4net.config")
{
repository = LogManager.CreateRepository(repositoryName);
XmlConfigurator.Configure(repository, new FileInfo(configFile));
_log = LogManager.GetLogger(repositoryName, "RollingLogFileAppender");
}
public static void Info(string msg)
{
log.Info(msg);
}
public static void Warn(string msg)
{
log.Warn(msg);
}
public static void Error(string msg, Exception exception = null)
{
log.Error(msg, exception);
}
public static void Debug(string msg)
{
log.Debug(msg);
}
public static void Fatal(string msg)
{
log.Fatal(msg);
}
}
}
原文:https://www.cnblogs.com/gygtech/p/14635674.html