using MsLogLevel = Microsoft.Extensions.Logging.LogLevel;
namespace ROLAC.API.Services.Logging;
///
/// Bound from configuration section Logging:Database. Controls what the DB sink persists.
///
public sealed class DatabaseLoggerOptions
{
/// The minimum level actually written to the SystemLogs table. Default: Warning.
public MsLogLevel MinimumLevel { get; set; } = MsLogLevel.Warning;
///
/// Category prefixes never persisted — prevents recursion and log-storms. The DB sink
/// excludes EF/Npgsql (their SQL firehose), the ASP.NET request firehose, and its own
/// writer namespace.
///
public string[] ExcludedCategories { get; set; } =
[
"Microsoft.EntityFrameworkCore",
"Npgsql",
"Microsoft.AspNetCore.Hosting.Diagnostics",
"Microsoft.AspNetCore.Routing",
"ROLAC.API.Services.Logging",
"ROLAC.API.Data.Logging",
];
}