Microsoft.Extensions.Logging 11.0.0-preview.7.26381.103

About

Microsoft.Extensions.Logging is combined with a core logging abstraction under Microsoft.Extensions.Logging.Abstractions. This abstraction is available in our basic built-in implementations like console, event log, and debug (Debug.WriteLine) logging.

Key Features

  • Provide concrete implementations of ILoggerFactory
  • Provide extension methods for service collections, logger builder, and activity tracking
  • Provide logging filtering extension methods for logger builder

How to Use

Prior to .NET 6, we only had two forms possible for doing logging, using Microsoft.Extensions.Logging:

public class LoggingSample1
{
    private ILogger _logger;

    public LoggingSample1(ILogger logger)
    {
        _logger = logger;
    }

    public void LogMethod(string name)
    {
        _logger.LogInformation("Hello {name}", name);
    }
}

Here are some problems with the LoggingSample1 sample using LogInformation, LogWarning, etc.:

  1. We can provide event ID through these APIs, but they are not required today. Which leads to bad usages in real systems that want to react or detect specific event issues being logged.
  2. Parameters passed are processed before LogLevel checks; this leads to unnecessary code paths getting triggered even when logging is disabled for a log level.
  3. It requires parsing of message string on every use to find templates to substitute.

Because of these problems, the more efficient runtime approach recommended as best practices is to use LoggerMessage.Define APIs instead, illustrated below with LoggingSample2:

public class LoggingSample2
{
    private ILogger _logger;

    public LoggingSample2(ILogger logger)
    {
        _logger = logger;
    }

    public void LogMethod(string name)
    {
        Log.LogName(_logger, name);
    }

    private static class Log
    {
        private static readonly Action<ILogger, string, Exception> _logName = LoggerMessage.Define<string>(LogLevel.Information, 0, @"Hello {name}");

        public static void LogName(ILogger logger, string name)
        {
            _logName(logger, name, null!);
        }
    }
}

To reach a balance between performance and usability we added the compile-time logging source generator feature in .NET 6, to learn more about it and learn how to use a source generator to create log messages check out this documentation.


public partial class InstanceLoggingExample
{
    private readonly ILogger _logger;

    public InstanceLoggingExample(ILogger logger)
    {
        _logger = logger;
    }

    [LoggerMessage(
        EventId = 0,
        Level = LogLevel.Critical,
        Message = "Could not open socket to `{hostName}`")]
    public partial void CouldNotOpenSocket(string hostName);
}

Baggage and Tags for ActivityTrackingOptions

.NET 5.0 exposed a new feature that allows configuring the logger builder with the ActivityTrackingOption to add the tracing context Span Id, Trace Id, Parent Id, Trace state, and Trace flags to the logging scope. The tracing context usually carried in Activity.Current.

.NET 6.0 Preview 1 extended this feature to include more tracing context properties which are the Baggage and the Tags:

  var loggerFactory = LoggerFactory.Create(logging =>
  {
      logging.Configure(options =>
      {
          options.ActivityTrackingOptions = ActivityTrackingOptions.Tags | ActivityTrackingOptions.Baggage;
      }).AddSimpleConsole(options =>
      {
          options.IncludeScopes = true;
      });
  });

Main Types

The main types provided by this library are:

  • LoggingServiceCollectionExtensions
  • LoggerFactory
  • LoggerFactoryOptions
  • LoggingBuilderExtensions
  • ActivityTrackingOptions
  • FilterLoggingBuilderExtensions

Additional Documentation

Microsoft.Extensions.Logging.Abstractions Microsoft.Extensions.Logging.Console Microsoft.Extensions.Logging.Debug Microsoft.Extensions.Logging.EventSource Microsoft.Extensions.Logging.EventLog Microsoft.Extensions.Logging.TraceSource

Feedback & Contributing

Microsoft.Extensions.Logging is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on Microsoft.Extensions.Logging.

Packages Downloads
MediatR
Simple, unambitious mediator implementation in .NET
504
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
254
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
274
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
292
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
309
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
381
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
534
Microsoft.EntityFrameworkCore.Design
Shared design-time components for Entity Framework Core tools.
283
Microsoft.EntityFrameworkCore.Design
Shared design-time components for Entity Framework Core tools.
320
Microsoft.EntityFrameworkCore.Relational
Shared Entity Framework Core components for relational database providers.
290
Microsoft.EntityFrameworkCore.Relational
Shared Entity Framework Core components for relational database providers.
294
Microsoft.EntityFrameworkCore.Relational
Shared Entity Framework Core components for relational database providers.
451
Microsoft.EntityFrameworkCore.SqlServer
Microsoft SQL Server database provider for Entity Framework Core.
311
Serilog.AspNetCore
Serilog support for ASP.NET Core logging
290
Serilog.AspNetCore
Serilog support for ASP.NET Core logging
292
Serilog.AspNetCore
Serilog support for ASP.NET Core logging
371
Serilog.AspNetCore
Serilog support for ASP.NET Core logging
433
Serilog.AspNetCore.Plus
Serilog support for ASP.NET Core logging with some plus features
250
Serilog.Extensions.Logging
Low-level Serilog provider for Microsoft.Extensions.Logging
247
Serilog.Extensions.Logging
Low-level Serilog provider for Microsoft.Extensions.Logging
252

https://go.microsoft.com/fwlink/?LinkID=799421

.NET 10.0

.NET Standard 2.1

.NET Standard 2.0

.NET Framework 4.6.2

.NET 11.0

Version Downloads Last updated
11.0.0-preview.7.26381.103 12 08/12/2026
11.0.0-preview.6.26359.118 17 07/16/2026
11.0.0-preview.5.26302.115 24 06/10/2026
11.0.0-preview.4.26230.115 24 05/13/2026
11.0.0-preview.3.26207.106 40 04/14/2026
11.0.0-preview.2.26159.112 45 03/11/2026
11.0.0-preview.1.26104.118 52 02/14/2026
10.0.11 11 08/11/2026
10.0.10 19 07/16/2026
10.0.9 21 06/10/2026
10.0.8 23 05/13/2026
10.0.7 51 04/21/2026
10.0.6 36 04/14/2026
10.0.5 49 03/14/2026
10.0.4 43 03/11/2026
10.0.3 48 02/14/2026
10.0.2 51 01/13/2026
10.0.1 70 12/09/2025
10.0.0 92 11/11/2025
10.0.0-rc.2.25502.107 105 10/15/2025
10.0.0-rc.1.25451.107 114 09/09/2025
10.0.0-preview.7.25380.108 137 08/13/2025
10.0.0-preview.6.25358.103 125 07/17/2025
10.0.0-preview.5.25277.114 137 06/06/2025
10.0.0-preview.4.25258.110 113 05/15/2025
10.0.0-preview.3.25171.5 145 04/11/2025
10.0.0-preview.2.25163.2 141 03/31/2025
10.0.0-preview.1.25080.5 124 03/30/2025
9.0.19 14 08/12/2026
9.0.18 18 07/16/2026
9.0.17 22 06/10/2026
9.0.16 26 05/13/2026
9.0.15 45 04/14/2026
9.0.14 45 03/11/2026
9.0.13 52 02/15/2026
9.0.12 55 01/13/2026
9.0.11 76 11/11/2025
9.0.10 120 10/15/2025
9.0.9 100 09/09/2025
9.0.8 194 08/06/2025
9.0.7 135 07/09/2025
9.0.6 117 06/11/2025
9.0.5 126 05/15/2025
9.0.4 144 04/11/2025
9.0.3 223 03/28/2025
9.0.2 181 02/16/2025
9.0.1 347 02/13/2025
9.0.0 325 11/14/2024
9.0.0-rc.2.24473.5 140 10/17/2024
9.0.0-rc.1.24431.7 121 09/19/2024
9.0.0-preview.7.24405.7 123 08/22/2024
9.0.0-preview.6.24327.7 152 07/18/2024
9.0.0-preview.5.24306.7 154 06/24/2024
9.0.0-preview.4.24266.19 145 07/19/2024
9.0.0-preview.3.24172.9 152 07/23/2024
9.0.0-preview.2.24128.5 143 07/18/2024
9.0.0-preview.1.24080.9 180 07/20/2024
8.0.1 261 10/15/2024
8.0.0 440 02/04/2024
8.0.0-rc.2.23479.6 163 07/23/2024
8.0.0-rc.1.23419.4 149 07/23/2024
8.0.0-preview.7.23375.6 158 07/27/2024
8.0.0-preview.6.23329.7 163 07/23/2024
8.0.0-preview.5.23280.8 167 07/17/2024
8.0.0-preview.4.23259.5 159 07/23/2024
8.0.0-preview.3.23174.8 153 07/22/2024
8.0.0-preview.2.23128.3 160 07/23/2024
8.0.0-preview.1.23110.8 170 07/22/2024
7.0.0 230 02/04/2024
7.0.0-rc.2.22472.3 139 07/23/2024
7.0.0-rc.1.22426.10 141 07/23/2024
7.0.0-preview.7.22375.6 158 07/23/2024
7.0.0-preview.6.22324.4 145 07/23/2024
7.0.0-preview.5.22301.12 163 07/23/2024
7.0.0-preview.4.22229.4 171 07/23/2024
7.0.0-preview.3.22175.4 177 07/20/2024
7.0.0-preview.2.22152.2 146 07/23/2024
7.0.0-preview.1.22076.8 142 07/23/2024
6.0.2-mauipre.1.22054.8 114 09/17/2025
6.0.1 116 11/14/2024
6.0.0 354 02/04/2024
6.0.0-rc.2.21480.5 154 07/23/2024
6.0.0-rc.1.21451.13 141 07/23/2024
6.0.0-preview.7.21377.19 141 07/21/2024
6.0.0-preview.6.21352.12 148 07/23/2024
6.0.0-preview.5.21301.5 155 07/22/2024
6.0.0-preview.4.21253.7 164 07/23/2024
6.0.0-preview.3.21201.4 154 07/23/2024
6.0.0-preview.2.21154.6 157 07/23/2024
6.0.0-preview.1.21102.12 157 07/23/2024
5.0.0 311 02/04/2024
5.0.0-rc.2.20475.5 146 07/23/2024
5.0.0-rc.1.20451.14 149 07/23/2024
5.0.0-preview.8.20407.11 129 07/23/2024
5.0.0-preview.7.20364.11 129 07/23/2024
5.0.0-preview.6.20305.6 175 07/20/2024
5.0.0-preview.5.20278.1 144 07/18/2024
5.0.0-preview.4.20251.6 187 07/23/2024
5.0.0-preview.3.20215.2 134 07/21/2024
5.0.0-preview.2.20160.3 149 07/23/2024
5.0.0-preview.1.20120.4 145 07/23/2024
3.1.32 153 07/23/2024
3.1.31 134 07/23/2024
3.1.30 155 07/23/2024
3.1.29 153 07/23/2024
3.1.28 156 07/23/2024
3.1.27 152 07/23/2024
3.1.26 172 07/23/2024
3.1.25 161 07/17/2024
3.1.24 150 07/23/2024
3.1.23 167 07/23/2024
3.1.22 143 07/23/2024
3.1.21 169 07/23/2024
3.1.20 164 07/18/2024
3.1.19 157 07/23/2024
3.1.18 165 07/23/2024
3.1.17 124 07/23/2024
3.1.16 156 07/23/2024
3.1.15 145 07/20/2024
3.1.14 161 07/23/2024
3.1.13 145 07/23/2024
3.1.12 158 07/23/2024
3.1.11 164 07/23/2024
3.1.10 150 07/23/2024
3.1.9 141 07/23/2024
3.1.8 150 07/23/2024
3.1.7 155 07/23/2024
3.1.6 156 07/22/2024
3.1.5 170 07/17/2024
3.1.4 182 07/23/2024
3.1.3 157 07/23/2024
3.1.2 147 07/23/2024
3.1.1 138 07/23/2024
3.1.0 157 07/23/2024
3.1.0-preview3.19553.2 164 07/23/2024
3.1.0-preview2.19525.4 147 07/23/2024
3.1.0-preview1.19506.1 156 07/23/2024
3.0.3 155 07/23/2024
3.0.2 177 07/17/2024
3.0.1 157 07/23/2024
3.0.0 145 07/23/2024
3.0.0-rc1.19456.10 150 07/23/2024
3.0.0-preview9.19423.4 151 07/23/2024
3.0.0-preview8.19405.4 153 07/18/2024
3.0.0-preview7.19362.4 136 07/23/2024
3.0.0-preview6.19304.6 149 07/23/2024
3.0.0-preview5.19227.9 147 07/23/2024
3.0.0-preview4.19216.2 153 07/24/2024
3.0.0-preview3.19153.1 158 07/18/2024
3.0.0-preview.19074.2 183 07/18/2024
3.0.0-preview.18572.1 159 07/23/2024
2.2.0 153 07/19/2024
2.2.0-preview3-35497 138 07/23/2024
2.2.0-preview2-35157 138 07/23/2024
2.2.0-preview1-35029 143 07/23/2024
2.1.1 160 07/21/2024
2.1.0 151 07/23/2024
2.1.0-rc1-final 134 07/22/2024
2.1.0-preview2-final 155 07/23/2024
2.1.0-preview1-final 164 07/18/2024
2.0.2 152 07/23/2024
2.0.1 145 02/19/2024
2.0.0 164 07/22/2024
2.0.0-preview2-final 141 07/23/2024
2.0.0-preview1-final 155 07/20/2024
1.1.2 165 07/23/2024
1.1.1 154 07/23/2024
1.1.0 162 07/23/2024
1.1.0-preview1-final 146 07/23/2024
1.0.2 165 07/20/2024
1.0.1 164 07/18/2024
1.0.0 142 07/24/2024
1.0.0-rc2-final 165 07/23/2024
1.0.0-rc1-final 160 07/23/2024