Serilog.Sinks.Console 6.0.0
前缀已保留
dotnet add package Serilog.Sinks.Console --version 6.0.0
NuGet\Install-Package Serilog.Sinks.Console -Version 6.0.0
<PackageReference Include="Serilog.Sinks.Console" Version="6.0.0" />
paket add Serilog.Sinks.Console --version 6.0.0
#r "nuget: Serilog.Sinks.Console, 6.0.0"
// Install Serilog.Sinks.Console as a Cake Addin #addin nuget:?package=Serilog.Sinks.Console&version=6.0.0 // Install Serilog.Sinks.Console as a Cake Tool #tool nuget:?package=Serilog.Sinks.Console&version=6.0.0
Serilog.Sinks.Console
A Serilog sink that writes log events to the Windows console or an ANSI terminal via standard output. It supports coloring and custom themes, including ANSI 256-color themes on macOS, Linux, and Windows 10. The default output is plain text; JSON formatting can be connected using a package such as Serilog.Formatting.Compact.
入门指南
要使用控制台接收器,首先安装NuGet 包
dotnet add package Serilog.Sinks.Console
然后使用 WriteTo.Console()
启用接收器
Log.Logger = new LoggerConfiguration()
.WriteTo.Console()
.CreateLogger();
Log.Information("Hello, world!");
日志事件将打印到 STDOUT
[12:50:51 INF] Hello, world!
主题
默认情况下,接收器将彩色渲染输出
可以在配置接收器时指定主题
.WriteTo.Console(theme: AnsiConsoleTheme.Code)
以下是一些内置的主题:
ConsoleTheme.None
- 无样式SystemConsoleTheme.Literate
- 以类似 Serilog.Sinks.Literate 的样式进行设计,使用支持所有 Windows/.NET 目标的System.Console
色彩模式;这是没有指定主题时的默认值SystemConsoleTheme.Grayscale
- 只使用灰色、白色和黑色的主题AnsiConsoleTheme.Literate
- “书面”主题的 ANSI 256 色版本AnsiConsoleTheme.Grayscale
- “灰色”主题的 ANSI 256 色版本AnsiConsoleTheme.Code
-灵感来源于 Visual Studio Code 的 ANSI 256 色主题AnsiConsoleTheme.Sixteen
-兼容浅色和深色背景的 ANSI 16 色主题
添加新主题很简单;有关示例,请参阅 SystemConsoleThemes
和 AnsiConsoleThemes
类。
输出模板
可以使用 outputTemplate
配置参数修改发送到控制台的日志事件格式
.WriteTo.Console(
outputTemplate: "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj}{NewLine}{Exception}")
默认模板(如上例所示)使用内置属性,如 Timestamp
和 Level
。来自事件的属性,包括使用 丰富器附加的属性,也可以出现在输出模板中。
JSON 输出
接收器可以写入 JSON 输出而不是纯文本。建议使用来自 Serilog.FormattingCompact 的 CompactJsonFormatter
或 RenderedCompactJsonFormatter
dotnet add package Serilog.Formatting.Compact
将格式化程序传递给 Console()
配置方法
.WriteTo.Console(new RenderedCompactJsonFormatter())
当使用自定义格式化程序时,不可用输出主题
<appSettings>
XML 配置
要使用控制台接收器与 Serilog.Settings.AppSettings 包,如果您尚未安装,请先安装该包
dotnet add package Serilog.Settings.AppSettings
调用 ReadFrom.AppSettings()
代替在代码中配置记录器
var log = new LoggerConfiguration()
.ReadFrom.AppSettings()
.CreateLogger();
在您的应用程序的 App.config
或 Web.config
文件中,指定 <appSettings>
节下的控制台接收器程序集
<configuration>
<appSettings>
<add key="serilog:using:Console" value="Serilog.Sinks.Console" />
<add key="serilog:write-to:Console" />
要使用不同的主题,并在输出中包含 SourceContext
,将您的 App.config
/Web.config
修改如下:
<configuration>
<appSettings>
<add key="serilog:using:Console" value="Serilog.Sinks.Console" />
<add key="serilog:write-to:Console.theme" value="Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme::Code, Serilog.Sinks.Console" />
<add key="serilog:write-to:Console.outputTemplate" value="[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj} <s:{SourceContext}>{NewLine}{Exception}" />
JSON appsettings.json
配置
要使用控制台接收器与Microsoft.Extensions.Configuration一起使用,例如与ASP.NET Core或.NET Core一起使用,请使用Serilog.Settings.Configuration包。首先安装该包,如果尚未安装的话
dotnet add package Serilog.Settings.Configuration
而不是直接在代码中配置接收器,请调用ReadFrom.Configuration()
var configuration = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.Build();
var logger = new LoggerConfiguration()
.ReadFrom.Configuration(configuration)
.CreateLogger();
在您的appsettings.json
文件中,在Serilog
节点下
{
"Serilog": {
"WriteTo": [{"Name": "Console"}]
}
}
要使用不同的主题配置控制台接收器,并在输出中包含SourceContext
,请将您的appsettings.json
更改如下
{
"Serilog": {
"WriteTo": [
{
"Name": "Console",
"Args": {
"theme": "Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme::Code, Serilog.Sinks.Console",
"outputTemplate": "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj} <s:{SourceContext}>{NewLine}{Exception}"
}
}
]
}
}
性能
控制台日志记录是同步的,这可能在某些部署场景中造成瓶颈。对于高量的控制台日志记录,请考虑使用Serilog.Sinks.Async将控制台写入移动到一个后台线程
// dotnet add package serilog.sinks.async
Log.Logger = new LoggerConfiguration()
.WriteTo.Async(wt => wt.Console())
.CreateLogger();
贡献
您是否想帮助使Serilog控制台接收器变得更好?我们保留了一个针对新手的可操作问题的列表,标签为up-for-grabs。在开始工作之前,我们建议在问题跟踪器上评论或提出一个问题,这样我们可以帮助并协调工作。有关更多详细信息,请查看我们的贡献指南。
在贡献时,请牢记我们的行为准则。
详细的构建状态
分支 | AppVeyor | Travis |
---|---|---|
dev | ||
main |
版权所有 © Serilog 贡献者 - 在Apache License, Version 2.0许可下提供。
产品 | 版本 兼容的和附加的目标框架版本。 |
---|---|
.NET | net5.0 已被计算。 net5.0-windows 已被计算。 net6.0 兼容。 net6.0-android 已被计算。 net6.0-ios 已被计算。 net6.0-maccatalyst 已被计算。 net6.0-macos 已被计算。 net6.0-tvos 已被计算。 net6.0-windows 已被计算。 net7.0 已被计算。 net7.0-android 已被计算。 net7.0-ios 已被计算。 net7.0-maccatalyst 已被计算。 net7.0-macos 已被计算。 net7.0-tvos 已被计算。 net7.0-windows 已被计算。 net8.0 兼容。 net8.0-android 已被计算。 net8.0-browser 已被计算。 net8.0-ios 已被计算。 net8.0-maccatalyst 已被计算。 net8.0-macos 已被计算。 net8.0-tvos 已被计算。 net8.0-windows 已被计算。 |
.NET Core | netcoreapp2.0 已被计算。 netcoreapp2.1 已被计算。 netcoreapp2.2 已被计算。 netcoreapp3.0 已被计算。 netcoreapp3.1 已被计算。 |
.NET Standard | netstandard2.0 兼容。 netstandard2.1 已被计算。 |
.NET Framework | net461 已计算。 net462 兼容。 net463 已计算。 net47 已计算。 net471 兼容。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
NuGet 包(1.3K)
显示依赖于 Serilog.Sinks.Console 的前 5 个 NuGet 包
包 | 下载 |
---|---|
Serilog.AspNetCore Serilog 对 ASP.NET Core 日志记录的支持 |
|
Serilog.Sinks.ColoredConsole 现在已被 Serilog.Sinks.Console 取代,请使用该包。Serilog 的彩色控制台输出 |
|
Serilog.Sinks.Literate 现在已由 Serilog.Sinks.Console 替换,请使用该包。Serilog 的一个彩色控制台接收器,用于美化输出属性。 |
|
Pulumi Pulumi .NET SDK 允许您用 C#、F# 和 VB.NET 编写云程序。 |
|
IppDotNetSdkForQuickBooksApiV3
QuickBooks API V3 的 IPP .NET SDK 是一组 .NET 类,可以让您更轻松地调用 QuickBooks API。这是 .Net Standard 2.0 版本的 .Net SDK。 |
GitHub 仓库 (369)
显示依赖 Serilog.Sinks.Console 的前 5 个最受欢迎的 GitHub 仓库
仓库 | 星标 |
---|---|
jellyfin/jellyfin
免费软件媒体系统
|
|
netchx/netch
一个简单的代理客户端
|
|
abpframework/abp
ASP.NET Core 开源 Web 应用程序框架!提供了一种有见地的架构来构建最佳实践的企业级解决方案,这些最佳实践位于 .NET 之上。提供基本基础设施、横切关注点实现、启动模板、应用程序模块、UI 主题、工具和文档。
|
|
IdentityServer/IdentityServer4
ASP.NET Core 的 OpenID Connect 和 OAuth 2.0 框架
|
|
microsoft/reverse-proxy
用于开发高性能 HTTP 反向代理应用程序的工具包。
|
版本 | 下载 | 最后更新 |
---|---|---|
6.0.0 | 2,844,506 | 6/9/2024 |
6.0.0-dev-00946 | 132 | 6/9/2024 |
5.1.0-dev-00943 | 101,137 | 3/17/2024 |
5.0.2-dev-00942 | 229 | 3/17/2024 |
5.0.1 | 19,223,173 | 11/28/2023 |
5.0.1-dev-00928 | 656 | 11/28/2023 |
5.0.0 | 19,642,473 | 11/9/2023 |
5.0.0-dev-00923 | 54,413 | 10/12/2023 |
4.2.0-dev-00918 | 169,051 | 7/21/2023 |
4.1.1-dev-00917 | 7,804 | 7/21/2023 |
4.1.1-dev-00910 | 297,052 | 3/14/2023 |
4.1.1-dev-00907 | 238,210 | 2/3/2023 |
4.1.1-dev-00901 | 111,473 | 1/6/2023 |
4.1.1-dev-00896 | 435,191 | 9/27/2022 |
4.1.0 | 68,305,476 | 9/6/2022 |
4.1.0-dev-00893 | 1,008 | 9/5/2022 |
4.0.2-dev-00890 | 506,102 | 12/22/2021 |
4.0.1 | 141,375,792 | 11/19/2021 |
4.0.1-dev-00879 | 81,359 | 10/21/2021 |
4.0.1-dev-00876 | 296,338 | 8/3/2021 |
4.0.1-dev-00874 | 52,853 | 7/13/2021 |
4.0.0 | 21,070,925 | 7/12/2021 |
4.0.0-dev-00870 | 1,135 | 7/12/2021 |
4.0.0-dev-00839 | 4,741,083 | 1/24/2020 |
4.0.0-dev-00837 | 46,865 | 1/15/2020 |
4.0.0-dev-00834 | 708,610 | 11/22/2019 |
4.0.0-dev-00832 | 1,433 | 11/22/2019 |
4.0.0-dev-00831 | 13,905 | 11/22/2019 |
3.1.2-dev-00824 | 522,477 | 9/13/2019 |
3.1.2-dev-00823 | 54,478 | 8/22/2019 |
3.1.2-dev-00819 | 14,144 | 8/21/2019 |
3.1.2-dev-00811 | 21,117 | 8/15/2019 |
3.1.2-dev-00806 | 29,792 | 8/2/2019 |
3.1.2-dev-00802 | 82,853 | 7/5/2019 |
3.1.2-dev-00800 | 53,460 | 6/24/2019 |
3.1.2-dev-00798 | 71,452 | 5/12/2019 |
3.1.2-dev-00796 | 12,471 | 5/6/2019 |
3.1.2-dev-00792 | 81,798 | 3/14/2019 |
3.1.2-dev-00788 | 100,407 | 1/15/2019 |
3.1.2-dev-00786 | 7,848 | 1/5/2019 |
3.1.2-dev-00779 | 231,335 | 9/22/2018 |
3.1.2-dev-00777 | 436,120 | 5/21/2018 |
3.1.2-dev-00774 | 32,715 | 5/9/2018 |
3.1.2-dev-00771 | 18,066 | 4/29/2018 |
3.1.1 | 223,569,737 | 10/22/2017 |
3.1.1-dev-00764 | 1,977 | 10/22/2017 |
3.1.1-dev-00762 | 1,853 | 10/22/2017 |
3.1.1-dev-00757 | 40,123 | 9/11/2017 |
3.1.0 | 831,529 | 9/11/2017 |
3.0.2-dev-00753 | 14,282 | 8/1/2017 |
3.0.1 | 17,584,756 | 6/23/2017 |
3.0.1-dev-00749 | 1,953 | 6/22/2017 |
3.0.1-dev-00747 | 1,970 | 6/22/2017 |
3.0.0 | 243,136 | 6/21/2017 |
3.0.0-dev-00737 | 1,936 | 6/21/2017 |
3.0.0-dev-00735 | 1,928 | 6/21/2017 |
3.0.0-dev-00734 | 1,874 | 6/19/2017 |
3.0.0-dev-00732 | 1,959 | 6/19/2017 |
2.2.0-dev-00721 | 26,185 | 1/25/2017 |
2.2.0-dev-00719 | 4,685 | 10/25/2016 |
2.1.0 | 1,116,414 | 7/5/2016 |
2.1.0-dev-00715 | 1,930 | 7/5/2016 |
2.1.0-dev-00713 | 1,880 | 7/5/2016 |
2.0.0 | 461,691 | 6/28/2016 |
2.0.0-rc-709 | 2,890 | 5/26/2016 |
2.0.0-beta-707 | 2,022 | 5/17/2016 |
2.0.0-beta-706 | 1,797 | 5/17/2016 |
2.0.0-beta-700 | 2,209 | 3/23/2016 |
2.0.0-beta-513 | 1,850 | 3/15/2016 |
2.0.0-beta-511 | 1,829 | 3/14/2016 |
2.0.0-beta-509 | 1,970 | 3/13/2016 |
2.0.0-beta-507 | 2,170 | 3/1/2016 |
2.0.0-beta-505 | 2,227 | 2/25/2016 |
2.0.0-beta-502 | 2,019 | 2/22/2016 |
2.0.0-beta-499 | 1,952 | 2/21/2016 |
2.0.0-beta-495 | 1,908 | 2/19/2016 |
2.0.0-beta-494 | 1,906 | 2/18/2016 |
2.0.0-beta-493 | 1,947 | 2/18/2016 |
2.0.0-beta-487 | 1,847 | 2/16/2016 |
2.0.0-beta-486 | 1,865 | 2/11/2016 |
2.0.0-beta-479 | 1,850 | 2/9/2016 |
2.0.0-beta-478 | 1,878 | 2/9/2016 |
2.0.0-beta-465 | 1,842 | 1/26/2016 |
2.0.0-beta-456 | 1,814 | 1/20/2016 |
2.0.0-beta-450 | 2,126 | 1/14/2016 |
2.0.0-beta-449 | 2,624 | 1/14/2016 |