Как использовать Serilog с Raygun и Autofac, различая логи и ошибки
Я пытаюсь использовать Serilog с раковиной Raygun с использованием AutoFac
Я успешно настроил Serilog с помощью AutoFact, используя https://groups.google.com/forum/
Если я хочу записать трассировку / отладку / информацию в ТОЛЬКО файл журнала и предупреждение / ошибка / неустранимый в подвижный файл и raygun
Как я могу настроить журнал?
Это мой настоящий конф:
public static ILogger CreateLogger()
{
var config = new LoggerConfiguration()
.ReadAppSettings();
InitialiseGlobalContext(config);
return config.CreateLogger();
}
с записями этого web.config:
<add key="serilog:minimum-level" value="Verbose" />
<add key="serilog:write-to:RollingFile.path" value="D:\WebRole\Logs\file-{Date}.txt" />
<add key="serilog:write-to:RollingFile.fileSizeLimitBytes" value="1024" />
<add key="serilog:write-to:RollingFile.retainedFileCountLimit" value="10" />
<add key="serilog:write-to:RollingFile.outputTemplate" value="{Timestamp} [{Level}] [{MachineName},{ApplicationName},{RuntimeVersion}] {Message}{NewLine}{Exception}" />
Поскольку conf является глобальным, если я добавлю.WriteTo.Raygun(), он будет записывать трассировку / отладку / информацию в raygun, я этого не хочу.
Есть идеи
2 ответа
Вы должны иметь возможность добавить дополнительную запись конфигурации, чтобы ограничить события через приемник Raygun:
<add key="serilog:write-to:Raygun.restrictedToMinimumLevel" value="Warning" />
Вам также необходимо убедиться, что сборка Raygun находится в выходном каталоге сборки проекта, и на нее ссылается запись "using", например:
<add key="serilog:using" value="Serilog.Sinks.Raygun" />
Для всех, кто приходит к этому (например, я), ответ таков, как описал @NicholasBlumhardt. Однако я также сделал ошибку, не имея applicationKey сразу после использования
<add key="serilog:using:Raygun" value="Serilog.Sinks.Raygun" />
<add key="serilog:write-to:Raygun.applicationKey" value="MYRAYGUNAPPLICATIONKEY" />
<add key="serilog:write-to:Raygun.restrictedToMinimumLevel" value="Information" />