我的log4net的配置:
<log4net>
<appender name="ItemsChangeLogFileAppender" type="log4net.Appender.SitecoreLogFileAppender, Sitecore.Logging">
<file value="\logs\ItemChangeLogs\itemLog.{date}.txt"/>
<appendToFile value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d %m%n"/>
</layout>
</appender>
<root>
<priority value="ALL"/>
<appender-ref ref="ItemsChangeLogFileAppender"/>
</root>
<logger name="ItemsChangeLogger">
<level value="ALL"/>
<appender-ref ref="ItemsChangeLogFileAppender"/>
</logger>
类:
public class LogEvents
{
private static readonly ILog log = LogManager.GetLogger("ItemsChangeLogger");
public LogEvents()
{
XmlConfigurator.Configure();
log.Info("Some message");
}
public void Test(object sender, EventArgs args)
{
log.Info("Test");
}
}
我想阅读我的日志,但找不到我的文件。
在某些问题(here)中,我使用了回答,但文件路径为空。如何解决这个问题?
答案 0 :(得分:1)
您必须阅读配置:
log4net.Config.XmlConfigurator.Configure("log4net.config");
假设您的配置文件的名称是log4net.xml。 log4net.xml文件必须位于bin目录中。
\ logs \ ItemChangeLogs文件夹必须在您的文件系统上激活。我会将其更改为链接:c:\ logs \ ItemChangeLogs,因此您知道log4net将在您的c驱动器上找到目录,而不是其他驱动器。
log4net configuration documentation
我通常使用assambly.cs文件中的属性配置log4net,如:
// Configure log4net using the .config file
[assembly: log4net.Config.XmlConfigurator(Watch=true)]
// This will cause log4net to look for a configuration file
// called TestApp.exe.config in the application base
// directory (i.e. the directory containing TestApp.exe)
// The config file will be watched for changes.