If there is one topic that every single .NET developer needs to be proficient at, it's Logging. Logging is fundamental to every application that wants to run reliably in production. From APIs, and web apps, to Desktop apps and mobile apps or even games, logging should be in place to ensure you have the right information you need to know what is going on in your system. Logging will be crucial when something inevitably goes wrong and you need to troubleshoot it. In modern .NET, we are blessed with an excellent built-in logger, but it is also essential to be proficient in Serilog, the most popular logging library. In this course, Nick will translate years of valuable logging knowledge gained in the field, working on real projects so you can follow the path of success.
What is Logging?
The simplest log entry
Log categories
Log Levels
Log providers (destinations)
Section recap
The modern .NET Logger
The log methods
Why simple logging isn’t good enough
What is Structured Logging?
The message template
Log entry parameters
Understanding the Log Category
Working with the Log Level
The log event id
Section recap
The logging packages
Host vs non-host console app
Customizing the loggers and providers
Log category configuration
Dealing with exceptions
What are Log filters?
Section recap
What is a provider?
Built-in providers
Using the Application Insights provider in ASP.NET Core
Using the Application Insights provider in a console app
Editing registered providers
Creating our own logger provider
Section recap
Log message template formatting
Dealing with complex objects
Log scopes
Checking for enabled log levels
Timed log entries
Changing the log level during runtime
Section recap
What is Serilog?
Creating a Serilog Logger
The concept of Sinks
The static Serilog logger
Simple Logger Dependency Injection
Integrating with the Microsoft Logger
File-based configuration
Log enrichment
Integrating with Application Insights
Dealing with Structured Data
Transforming Structured Data
Manually enriching logs
Timed Operations
Masking sensitive logs
Asynchronous processing
Creating your own Sink
Section recap
Why does it matter?
The LoggerMessage.Define method
The logging source generator
Section recap
What is monitoring?
Alerting in Application Insights
Error-based alerts
Query-based alerts
Section recap
Course conclusion
Course Info
Lifetime access
Buy Course
Nick Chapsas is a .NET & C# content creator, educator and a Microsoft MVP for Developer Technologies with years of experience in Software Engineering and Engineering Management.
He has worked for some of the biggest companies in the world, building systems that served millions of users and tens of thousands of requests per second.
Nick creates free content on YouTube and is the host of the Keep Coding Podcast.
More courses by Nick Chapsas© 2023 Dometrain. All rights reserved.