I am using log4net in an UWP app.
my config file is the following:
<?xml version="1.0" encoding="utf-8" ?>
<log4net debug="false">
<appender name="Console" type="log4net.Appender.DebugAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date - %message%newline" />
</layout>
</appender>
<appender name="LocalStorageFile" type="MyProject.LocalStorageFileAppender, MyProject">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date - %message%newline" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="Console" />
<appender-ref ref="LocalStorageFile" />
</root>
</log4net>
Since this is an UWP app, I need to manually load the XML file with the following method:
private static async Task ConfigureLog4Net()
{
// config for log4net:
Uri uri = new Uri("ms-appx:///log4netConfig.xml");
StorageFile sampleFile = await StorageFile.GetFileFromApplicationUriAsync(uri);
var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly());
using (Stream s = await sampleFile.OpenStreamForReadAsync())
{
log4net.Config.XmlConfigurator.Configure(logRepository, s);
}
Logger log = new Logger(typeof(AppConfigReader));
log.InfoFormat("Log is configured");
}
However, in my log there is always the fully qualified name of the logger, like this example:
MyCorp.Controls.MyView:2019-01-23 10:38:32,434 - log test here
How can I configure log4net to see a log like this instead (without the logger name):
2019-01-23 10:38:32,434 - log test here