![]() |
VOOZH | about |
dotnet add package Serilog.Extensions.Hosting --version 10.0.0
NuGet\Install-Package Serilog.Extensions.Hosting -Version 10.0.0
<PackageReference Include="Serilog.Extensions.Hosting" Version="10.0.0" />
<PackageVersion Include="Serilog.Extensions.Hosting" Version="10.0.0" />Directory.Packages.props
<PackageReference Include="Serilog.Extensions.Hosting" />Project file
paket add Serilog.Extensions.Hosting --version 10.0.0
#r "nuget: Serilog.Extensions.Hosting, 10.0.0"
#:package Serilog.Extensions.Hosting@10.0.0
#addin nuget:?package=Serilog.Extensions.Hosting&version=10.0.0Install as a Cake Addin
#tool nuget:?package=Serilog.Extensions.Hosting&version=10.0.0Install as a Cake Tool
Serilog logging for Microsoft.Extensions.Hosting. This package routes framework log messages through Serilog, so you can get information about the framework's internal operations written to the same Serilog sinks as your application events.
Versioning: This package tracks the versioning and target framework support of its Microsoft.Extensions.Hosting dependency. Most users should choose the version of Serilog.Extensions.Hosting that matches their application's target framework. I.e. if you're targeting .NET 7.x, choose a 7.x version of Serilog.Extensions.Hosting. If you're targeting .NET 8.x, choose an 8.x Serilog.Extensions.Hosting version, and so on.
First, install the Serilog.Extensions.Hosting NuGet package into your app. You will need a way to view the log messages - Serilog.Sinks.Console writes these to the console; there are many more sinks available on NuGet.
dotnet add package Serilog.Extensions.Hosting
dotnet add package Serilog.Sinks.Console
Next, in your application's Program.cs file, configure Serilog first. A try/catch block will ensure any configuration issues are appropriately logged. Call AddSerilog() on the host application builder:
using Serilog;
Log.Logger = new LoggerConfiguration()
.Enrich.FromLogContext()
.WriteTo.Console()
.CreateLogger();
try
{
Log.Information("Starting host");
var builder = Host.CreateApplicationBuilder(args);
builder.Services.AddHostedService<PrintTimeService>();
builder.Services.AddSerilog();
var app = builder.Build();
await app.RunAsync();
return 0;
}
catch (Exception ex)
{
Log.Fatal(ex, "Host terminated unexpectedly");
return 1;
}
finally
{
await Log.CloseAndFlushAsync();
}
Finally, clean up by removing the remaining "Logging" section from appsettings.json files (this can be replaced with Serilog configuration as shown in this example, if required)
That's it! You will see log output like:
[22:10:39 INF] Getting the motors running...
[22:10:39 INF] The current time is: 12/05/2018 10:10:39 +00:00
A more complete example, showing appsettings.json configuration, can be found in the sample project here.
With Serilog.Extensions.Hosting installed and configured, you can write log messages directly through Serilog or any ILogger interface injected by .NET. All loggers will use the same underlying implementation, levels, and destinations.
You can alternatively configure Serilog using a delegate as shown below:
// dotnet add package Serilog.Settings.Configuration
builder.Services.AddSerilog((services, loggerConfiguration) => loggerConfiguration
.ReadFrom.Configuration(builder.Configuration)
.Enrich.FromLogContext()
.WriteTo.Console())
This has the advantage of making builder's Configuration object available for configuration of the logger, but at the expense of ignoring Exceptions raised earlier in program startup.
If this method is used, Log.Logger is assigned implicitly, and closed when the app is shut down.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 netcoreapp2.0 was computed. netcoreapp2.1 netcoreapp2.1 was computed. netcoreapp2.2 netcoreapp2.2 was computed. netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 netstandard2.0 is compatible. netstandard2.1 netstandard2.1 is compatible. |
| .NET Framework | net461 net461 was computed. net462 net462 is compatible. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen40 tizen40 was computed. tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 5 NuGet packages that depend on Serilog.Extensions.Hosting:
| Package | Downloads |
|---|---|
|
Serilog.AspNetCore
Serilog support for ASP.NET Core logging |
|
|
Umbraco.Cms.Web.Common
Contains the web assembly needed to run Umbraco CMS. |
|
|
Umbraco.Cms.Infrastructure
Contains the infrastructure assembly needed to run Umbraco CMS. |
|
|
Umbraco.Cms.Examine.Lucene
Adds Examine searching support using Lucene to Umbraco CMS. |
|
|
Umbraco.Cms.Web.Website
Contains the website assembly needed to run the frontend of Umbraco CMS. |
Showing the top 20 popular GitHub repositories that depend on Serilog.Extensions.Hosting:
| Repository | Stars |
|---|---|
|
netchx/netch
A simple proxy client
|
|
|
abpframework/abp
Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
|
|
|
Kareadita/Kavita
Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.
|
|
|
RayWangQvQ/BiliBiliToolPro
B 站(bilibili)自动任务工具,支持docker、青龙、k8s等多种部署方式。全面拥抱AI。敏感肌也能用。
|
|
|
quartznet/quartznet
Quartz Enterprise Scheduler .NET
|
|
|
kurrent-io/KurrentDB
KurrentDB is a database that's engineered for modern software applications and event-driven architectures. Its event-native design simplifies data modeling and preserves data integrity while the integrated streaming engine solves distributed messaging challenges and ensures data consistency.
|
|
|
dotnet/tye
Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier. Project Tye includes a local orchestrator to make developing microservices easier and the ability to deploy microservices to Kubernetes with minimal configuration.
|
|
|
umbraco/Umbraco-CMS
Umbraco is a free and open source .NET content management system helping you deliver delightful digital experiences.
|
|
|
modelcontextprotocol/csharp-sdk
The official C# SDK for Model Context Protocol servers and clients. Maintained in collaboration with Microsoft.
|
|
|
itsfatduck/optimizerDuck
Free, open-source Windows optimization tool for performance, privacy, and simplicity.
|
|
|
skoruba/IdentityServer4.Admin
The administration for the IdentityServer4 and Asp.Net Core Identity
|
|
|
fullstackhero/blazor-starter-kit
Clean Architecture Template for Blazor WebAssembly Built with MudBlazor Components.
|
|
|
SciSharp/BotSharp
AI Multi-Agent Framework in .NET
|
|
|
ErsatzTV/legacy
Open-source platform that transforms your personal media library into live, custom TV channels.
|
|
|
BrighterCommand/Brighter
A framework for building messaging apps with .NET and C#.
|
|
|
Impostor/Impostor
Impostor - An open source reimplementation of the Among Us Server
|
|
|
Cleanuparr/Cleanuparr
Advanced download manager for the Servarr ecosystem
|
|
|
velopack/velopack
Installer and automatic update framework for cross-platform desktop applications
|
|
|
microsoft/sbom-tool
The SBOM tool is a highly scalable and enterprise ready tool to create SPDX 2.2 compatible SBOMs for any variety of artifacts.
|
|
|
sipsorcery-org/sipsorcery
A WebRTC, SIP and VoIP library for C# and .NET. Designed for real-time communications apps.
|
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.0 | 34,160,157 | 11/28/2025 |
| 10.0.0-dev-02310 | 414 | 11/28/2025 |
| 10.0.0-dev-02309 | 322 | 11/28/2025 |
| 9.0.1-dev-02307 | 125,100 | 2/19/2025 |
| 9.0.0 | 88,902,670 | 12/9/2024 |
| 9.0.0-dev-02303 | 22,182 | 11/27/2024 |
| 9.0.0-dev-02301 | 475 | 11/27/2024 |
| 8.0.0 | 195,450,613 | 11/15/2023 |
| 8.0.0-dev-00145 | 615 | 4/5/2024 |
| 8.0.0-dev-00143 | 586 | 3/25/2024 |
| 8.0.0-dev-00140 | 565 | 3/14/2024 |
| 8.0.0-dev-00137 | 818 | 11/15/2023 |
| 7.0.0 | 49,254,228 | 5/11/2023 |
| 7.0.0-dev-00131 | 1,080 | 5/10/2023 |
| 7.0.0-dev-00129 | 8,443 | 5/5/2023 |
| 7.0.0-dev-00126 | 1,023 | 5/5/2023 |
| 5.1.0-dev-00123 | 20,023 | 3/21/2023 |
| 5.0.1 | 123,756,672 | 7/18/2022 |
| 5.0.1-dev-00113 | 1,492 | 7/18/2022 |
| 5.0.0 | 3,776,045 | 7/8/2022 |