Dot-Net
是否可以更改serilog中的顏色?
我剛剛在我的 dot net core 項目中集成了 Serilog。它工作得非常好,但我使用了一個黑暗的主題,有些日誌真的很難閱讀。舉個例子:
這就是我初始化 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");例如,有什麼方法可以改變顏色以使黑色原木變為白色?
是的,使用控制台接收器時更改顏色的方法是通過主題。您可以嘗試其中一種內置的,或創建自己的。
預設情況下,控制台接收器將為輸出著色:
配置接收器時可以指定主題:
.WriteTo.Console(theme: AnsiConsoleTheme.Code)在撰寫本文時,以下內置主題可用:
ConsoleTheme.None- 沒有造型SystemConsoleTheme.Literate- 樣式複制Serilog.Sinks.Literate,使用System.Console所有 Windows/.NET 目標支持的著色模式;這是未指定主題時的預設設置SystemConsoleTheme.Grayscale- 僅使用灰色、白色和黑色陰影的主題AnsiConsoleTheme.Literate- “literate”主題的 ANSI 16 色版本;我們希望在未來更新它以使用 256 色以獲得更精緻的外觀AnsiConsoleTheme.Grayscale- “灰度”主題的 ANSI 256 色版本AnsiConsoleTheme.Code- ANSI 256 色 Visual Studio Code 啟發主題添加新主題很簡單;範例可以在
SystemConsoleThemes和AnsiConsoleThemes類中找到。

