Logging in .NET Core & .NET 5
Quick links
- Introduction to logging in ASP.NET Core
- Experiments on GitHub: devpro/dotnetcore-logging
Tips
- For a netstandard library
-
Add
Microsoft.Extensions.Loggingto the project (do not add a strong dependency to a logging framework such as log4net or NLog!).<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><TargetFramework>netcoreapp2.0</TargetFramework></PropertyGroup><ItemGroup><PackageReference Include="Microsoft.Extensions.Logging" Version="2.0.0" /></ItemGroup><!-- ... --></Project> -
Add
ILoggerdependency (IoC) to the class constructor and the related private fieldusing Microsoft.Extensions.Logging;// ...public class MyClass{private readonly ILogger _logger;public MyClass(ILogger<PuppetFacterService> logger){_logger = logger;}public MyMethod(){_logger.LogInformation("MyMethod called");}}
-
Frameworks
Serilog
Homepage: serilog.net
Usecases
Logging in Redis
- Possible with Serilog
- NLog.Redis not yet available for .NET Core (as of the 10th of May 2018).