Reputation: 6296
I have just integrated Serilog in my dot net core project. It is working really well but I use a dark theme and some logs are really dificult to read. As an example:
This is how I init Serilog:
string environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
LoggerConfiguration loggerConfig = new LoggerConfiguration();
if (environment == "Production")
loggerConfig.MinimumLevel.Information();
loggerConfig.MinimumLevel.Override("Microsoft.AspNetCore",
LogEventLevel.Warning)
.Enrich.FromLogContext()
.WriteTo.Console()
.WriteTo.File("Logs/app.log");
Is there any way I could change colors to make that black logs white for example?
Upvotes: 15
Views: 18529
Reputation: 21
Somewhat similar issue but I was trying to color the full line based on log levels;
I figured out how to do it. You can find how I accomplished it here if you're interested: https://github.com/serilog/serilog-sinks-console/issues/35#issuecomment-2577943657
Upvotes: 0
Reputation: 27828
Yes, the way to change colors when using the Console sink is through themes. You can try one of the built-in ones, or create your own.
The Console sink will colorize output by default:
Themes can be specified when configuring the sink:
.WriteTo.Console(theme: AnsiConsoleTheme.Code)
The following built-in themes are available as of this writing:
ConsoleTheme.None
- no stylingSystemConsoleTheme.Literate
- styled to replicate Serilog.Sinks.Literate, using the System.Console
coloring modes supported on all Windows/.NET targets; this is the default when no theme is specifiedSystemConsoleTheme.Grayscale
- a theme using only shades of gray, white, and blackAnsiConsoleTheme.Literate
- an ANSI 16-color version of the "literate" theme; we expect to update this to use 256-colors for a more refined look in futureAnsiConsoleTheme.Grayscale
- an ANSI 256-color version of the "grayscale" themeAnsiConsoleTheme.Code
- an ANSI 256-color Visual Studio Code-inspired themeAdding a new theme is straightforward; examples can be found in the SystemConsoleThemes
and AnsiConsoleThemes
classes.
Upvotes: 29