Serilog.Extensions.Hosting 8.0.0
前缀已预留
dotnet add package Serilog.Extensions.Hosting --version 8.0.0
NuGet\Install-Package Serilog.Extensions.Hosting -Version 8.0.0
<PackageReference Include="Serilog.Extensions.Hosting" Version="8.0.0" />
paket add Serilog.Extensions.Hosting --version 8.0.0
#r "nuget: Serilog.Extensions.Hosting, 8.0.0"
// Install Serilog.Extensions.Hosting as a Cake Addin #addin nuget:?package=Serilog.Extensions.Hosting&version=8.0.0 // Install Serilog.Extensions.Hosting as a Cake Tool #tool nuget:?package=Serilog.Extensions.Hosting&version=8.0.0
Serilog.Extensions.Hosting
Serilog 为 Microsoft.Extensions.Hosting 提供日志功能。这个软件包通过 Serilog 路由框架日志消息,使您可以使用与您的应用程序事件相同的 Serilog 接收器获取关于框架内部操作的信息。
ASP.NET Core 应用程序应考虑 使用 Serilog.AspNetCore 代替,它包含了这个包以及其他 ASP.NET Core 特定功能。
说明
首先,将 Serilog.Extensions.Hosting 的 NuGet 包 安装到您的应用中。您需要一个方法来查看日志消息 - Serilog.Sinks.Console 将这些消息写入控制台;在 NuGet 上有许多其他可用的接收器。
dotnet add package Serilog.Extensions.Hosting
dotnet add package Serilog.Sinks.Console
接下来,在您的应用程序的 Program.cs 文件中,首先配置 Serilog。一个 try
/catch
块将确保任何配置问题都得到恰当的记录
public class Program
{
public static int Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.Console()
.CreateLogger();
try
{
Log.Information("Starting host");
BuildHost(args).Run();
return 0;
}
catch (Exception ex)
{
Log.Fatal(ex, "Host terminated unexpectedly");
return 1;
}
finally
{
Log.CloseAndFlush();
}
}
然后,将 UseSerilog()
添加到在 BuildHost()
中的主机生成器。
public static IHost BuildHost(string[] args) =>
new HostBuilder()
.ConfigureServices(services => services.AddSingleton<IHostedService, PrintTimeService>())
.UseSerilog() // <- Add this line
.Build();
}
最后,清理剩余的 "Logging"
部分,从 appsettings.json 文件中删除(如有需要,可以替换为如 在这里所示 的 Serilog 配置)
就这样!您将看到像这样的日志输出
[22:10:39 INF] Getting the motors running...
[22:10:39 INF] The current time is: 12/05/2018 10:10:39 +00:00
包含更完整示例的 appsettings.json 配置可以在 此处的示例项目中找到。
使用软件包
安装并配置好 Serilog.Extensions.Hosting 后,您可以直接通过 Serilog 或由 .NET 注入的任何 ILogger
接口写入日志消息。所有记录器都将使用相同的底层实现、级别和目标。
提示:将 Microsoft
的最小级别更改为 Warning
内联初始化
您还可以像下面这样使用委托配置 Serilog
// dotnet add package Serilog.Settings.Configuration
.UseSerilog((hostingContext, services, loggerConfiguration) => loggerConfiguration
.ReadFrom.Configuration(hostingContext.Configuration)
.Enrich.FromLogContext()
.WriteTo.Console())
这种方法的优点是使 hostingContext
的 Configuration
对象可用于记录器配置,但代价是会忽略程序启动早期抛出的 Exception
如果使用此方法,则 Log.Logger
将隐式分配,并在应用程序关闭时关闭。
版本管理
此软件包跟踪其对 Microsoft.Extensions.Hosting 依赖项的版本控制和目标框架支持。
产品 | 版本 兼容和附加的目标框架版本。 |
---|---|
.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 已计算。 |
-
.NETFramework 4.6.2
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
-
.NETStandard 2.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
-
net6.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
-
net7.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
NuGet 包 (286)
显示依赖于 Serilog.Extensions.Hosting 的前 5 个 NuGet 包
包 | 下载 |
---|---|
Serilog.AspNetCore Serilog 支持 ASP.NET Core 日志记录 |
|
Umbraco.Cms.Infrastructure 包含运行 Umbraco CMS 所需的基础设施程序集。 |
|
Blauhaus.Analytics.Serilog
包描述 |
|
DotNetCore.Logging
DotNetCore.Logging |
|
ComplianceAuditSystems.AcabimCommonServices
包描述 |
GitHub 存储库 (77)
显示依赖于 Serilog.Extensions.Hosting 的前 5 个最受欢迎的 GitHub 存储库
存储库 | 星星数 |
---|---|
netchx/netch
一个简单的代理客户端
|
|
abpframework/abp
基于ASP.NET Core的开源Web应用程序框架!提供了一个基于.NET最佳实践的、具有主观架构的企业软件解决方案。它提供了基本的基础设施、横向关注点实现、启动模板、应用程序模块、UI主题、工具和文档。
|
|
quartznet/quartznet
Quartz企业调度.NET
|
|
RayWangQvQ/BiliBiliToolPro
B站(bilibili)自动任务工具,支持docker、青龙、k8s等多种部署方式。敏感肌也能用。
|
|
Kareadita/Kavita
Kavita是一款快速、功能丰富的跨平台阅读服务器。旨在满足所有阅读需求的全解决方案。设置您自己的服务器,并与您的朋友和家人共享您的阅读收藏。
|
版本 | 下载 | 最后更新 |
---|---|---|
8.0.0 | 29,178,380 | 11/15/2023 |
8.0.0-dev-00145 | 166 | 4/5/2024 |
8.0.0-dev-00143 | 193 | 3/25/2024 |
8.0.0-dev-00140 | 141 | 3/14/2024 |
8.0.0-dev-00137 | 409 | 11/15/2023 |
7.0.0 | 28,116,619 | 5/11/2023 |
7.0.0-dev-00131 | 667 | 5/10/2023 |
7.0.0-dev-00129 | 6,587 | 5/5/2023 |
7.0.0-dev-00126 | 609 | 5/5/2023 |
5.1.0-dev-00123 | 13,273 | 3/21/2023 |
5.0.1 | 80,194,832 | 7/18/2022 |
5.0.1-dev-00113 | 1,056 | 7/18/2022 |
5.0.0 | 1,686,683 | 7/8/2022 |
5.0.0-dev-00108 | 619 | 7/8/2022 |
5.0.0-dev-00095 | 46,018 | 3/21/2022 |
5.0.0-dev-00094 | 690 | 3/21/2022 |
5.0.0-dev-00093 | 316,062 | 3/4/2022 |
4.2.1-dev-00092 | 8,537 | 2/27/2022 |
4.2.0 | 48,287,461 | 11/8/2021 |
4.2.0-dev-00079 | 710 | 11/8/2021 |
4.1.2 | 74,997,801 | 3/3/2021 |
4.1.2-dev-00062 | 884 | 3/3/2021 |
4.1.1 | 29,501 | 3/2/2021 |
4.1.1-dev-00058 | 1,456 | 3/2/2021 |
4.1.0 | 258,800 | 2/24/2021 |
4.1.0-dev-00054 | 953 | 2/23/2021 |
4.0.0 | 331,965 | 2/14/2021 |
4.0.0-dev-00051 | 100,418 | 10/9/2020 |
4.0.0-dev-00050 | 945 | 10/9/2020 |
3.1.0 | 45,079,612 | 5/27/2020 |
3.1.0-dev-00041 | 1,032 | 5/27/2020 |
3.1.0-dev-00037 | 1,119 | 5/24/2020 |
3.1.0-dev-00035 | 25,541 | 5/11/2020 |
3.0.0 | 50,981,412 | 8/27/2019 |
3.0.0-dev-00024 | 1,104 | 8/27/2019 |
3.0.0-dev-00019 | 128,282 | 6/26/2019 |
3.0.0-dev-00016 | 5,829 | 6/24/2019 |
3.0.0-dev-00015 | 1,174 | 6/24/2019 |
2.0.1-dev-00009 | 97,160 | 9/21/2018 |
2.0.1-dev-00007 | 2,116 | 8/5/2018 |
2.0.1-dev-00004 | 1,922 | 7/19/2018 |
2.0.0 | 2,219,947 | 7/19/2018 |
2.0.0-dev-00001 | 21,168 | 6/3/2018 |