私のコードは次のとおりです。
log4net.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<log4net>
<appender name="MyLog" type="log4net.Appender.RollingFileAppender">
<file value="logs\log-file.txt" />
<appendToFile value="true" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="MyWayLog" />
</root>
</log4net>
</configuration>
LoggerInstaller.cs
public class LoggerInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.AddFacility<LoggingFacility>(f => f.UseLog4Net().WithConfig("log4net.config"));
}
}
MyLogger.cs
private static ILoggerFactory loggera = IoC.Container.Resolve<ILoggerFactory>();
private static ILogger logger = loggera.Create("MyLog");
public static ILogger Log
{
get { return logger; }
set { logger = value; }
}
使用する場合Log.Error("some exception")
ログ ファイルには、他の dll からの他のログがあります。呼び出し (Log.Error) から明示的にのみ、他の dll 例外ではなく、自分のログのみが必要です。