Подтвердить что ты не робот

Как использовать NLog Config при регистрации в ServiceStack?

Основная проводка кажется прямой, но мне трудно понять, как настроить NLog как обычно. Учитывая следующую настройку, как мне настроить конфигурацию, чтобы получить текстовый файл, сбрасываемый в папку?

AppHost:

LogManager.LogFactory = new NLogFactory();

В App Logic:

ILog log = LogManager.GetLogger(GetType());

log.InfoFormat("Something happened");

Файл конфигурации, например:

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<targets>
<target name="console" xsi:type="ColoredConsole"
 layout="${date:format=HH\:mm\:ss}|${level}|${stacktrace}|${message}" />
<target name="file" xsi:type="File" fileName="${specialfolder:folder=ApplicationData}/logs/App.log"
 layout="${date}: ${message}" />
<target name="eventlog" xsi:type="EventLog" source="My App" log="Application"
layout="${date}: ${message} ${stacktrace}" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="file" />
<logger name="*" minlevel="Fatal" writeTo="eventlog" />
</rules>

4b9b3361

Ответ 1

Ведение журнала должно быть идеально указано до того, как AppHost будет инициализирован, поэтому все статичные инициализаторы для всех классов в ServiceStack используют настроенный журнал, например:

LogManager.LogFactory = new NLogFactory();
var appHost = new AppHost();
appHost.Init();