Мы пытаемся внедрить ведение журнала с помощью Serilog.Sinks.SumoLogic(1.0.1) в приложения-функции Azure (без ядра .NET). Ниже приведен код и appsetting.json, которые мы используем.
Код:
var configuration = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json",optional: false, reloadOnChange: true)
.Build();
var loggerFromConfig = new LoggerConfiguration()
.ReadFrom.Configuration(configuration)
.CreateLogger();
Appsettings.json:
{"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"System": "Warning",
"Microsoft": "Warning"
}
},
"WriteTo": [
{
"Name": "SumoLogic",
"Args": {
"endpointUrl": "https:"
}
}
]
}
}
С помощью вышеуказанной настройки приложения мы не можем связать сумологический приемник с объектом loggerFromConfig
и _sinks = {Serilog.Core.ILogEventSink[0]}
, который показывает, что приемник не настроен.
Если мы попробуем тот же код с образцом проекта с зависимостью Microsoft.NET.Core.Apps, он будет работать нормально.
Похоже, что appsettings.json поддерживается только основными приложениями .NET.
Пожалуйста, предложите, как написать журнал, используя Serilog с appsettings.json
(без основных приложений .NET).