SeriLog - Custom Sink для OracleDB в отдельном проекте
Я написал приемник для SeriLog, который записывает журналы в OracleDB. Этот приемник находится в другой библиотеке классов, а хост-проект ссылается на эту библиотеку классов.
По какой-то причине SeriLog не запускает конфигурацию OracleSink. Я понимаю, что есть возможность настроить это в appsettings.json
файл проекта хоста, но я не хочу загружать свой файл конфигурации с конфигурациями SeriLog.
Есть ли другой способ сообщить LoggerConfiguration в Program.Main()
где сборка что держит кастомную мойку?
public sealed class Program
{
public static int Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
#if DEBUG
.MinimumLevel.Debug()
#else
.MinimumLevel.Information()
#endif
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.RollingFile("Logs/Unilin-Shipping-{Date}.txt")
//.WriteTo.OracleSink("connectionString","storedProcedure"); => Doesn't find OracleSink
.CreateLogger();
try
{
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseSerilog()
.Build()
.Run();
return 0;
}
catch (Exception ex)
{
Log.Fatal(ex, "Host terminated unexpectedly");
return 1;
}
finally
{
Log.CloseAndFlush();
}
}
}