Microsoft.Data.SqlClient.Extensions.Logging 1.0.0-preview1.26064.3
Microsoft.Data.SqlClient.Extensions.Logging
Description
This package provides ETW EventSource tracing and diagnostics for Microsoft.Data.SqlClient. It enables comprehensive logging and telemetry capabilities for SQL Server database operations.
Key Features
- ETW EventSource Integration: Structured logging using Event Tracing for Windows (ETW)
- Diagnostic Listeners: Hook into SqlClient diagnostic events
- Performance Counters: Track connection pool and query performance metrics
- Correlation Support: Integrate with distributed tracing systems
Supportability
This package supports:
- .NET Standard 2.0 (compatible with .NET Framework 4.6.1+, .NET Core 2.0+, and .NET 5+)
Installation
Install the package via NuGet:
dotnet add package Microsoft.Data.SqlClient.Extensions.Logging
Or via the Package Manager Console:
Install-Package Microsoft.Data.SqlClient.Extensions.Logging
Getting Started
Enable ETW Tracing
Use tools like PerfView or Windows Performance Recorder to capture ETW events:
# Using PerfView
PerfView.exe collect /Providers=*Microsoft.Data.SqlClient.EventSource
Subscribe to Diagnostic Events
using System.Diagnostics;
// Subscribe to SqlClient diagnostic events
DiagnosticListener.AllListeners.Subscribe(new SqlClientObserver());
public class SqlClientObserver : IObserver<DiagnosticListener>
{
public void OnNext(DiagnosticListener listener)
{
if (listener.Name == "SqlClientDiagnosticListener")
{
listener.Subscribe(new SqlClientEventObserver());
}
}
public void OnError(Exception error) { }
public void OnCompleted() { }
}
public class SqlClientEventObserver : IObserver<KeyValuePair<string, object>>
{
public void OnNext(KeyValuePair<string, object> value)
{
Console.WriteLine($"Event: {value.Key}");
// Process event data...
}
public void OnError(Exception error) { }
public void OnCompleted() { }
}
Event Categories
The logging extension emits events in these categories:
| Category | Events |
|---|---|
| Connection | Open, Close, Pool operations |
| Commands | Before/After execution, Errors |
| Transactions | Begin, Commit, Rollback |
| Pool | Connection acquired/released, Pool sizing |
| Errors | Exceptions, Retries, Timeouts |
Documentation
License
This package is licensed under the MIT License.
Related Packages
- Microsoft.Data.SqlClient - The main SqlClient driver
- Microsoft.Data.SqlClient.Extensions.Abstractions - Core abstractions
- Microsoft.Data.SqlClient.Extensions.Azure - Azure integration extensions
Showing the top 20 packages that depend on Microsoft.Data.SqlClient.Extensions.Logging.
| Packages | Downloads |
|---|---|
|
Microsoft.Data.SqlClient
The current data provider for SQL Server and Azure SQL databases. This has replaced System.Data.SqlClient. These classes provide access to SQL and encapsulate database-specific protocols, including tabular data stream (TDS).
Commonly Used Types:
Microsoft.Data.SqlClient.SqlConnection
Microsoft.Data.SqlClient.SqlException
Microsoft.Data.SqlClient.SqlParameter
Microsoft.Data.SqlClient.SqlDataReader
Microsoft.Data.SqlClient.SqlCommand
Microsoft.Data.SqlClient.SqlTransaction
Microsoft.Data.SqlClient.SqlParameterCollection
Microsoft.Data.SqlClient.SqlClientFactory
When using NuGet 3.x this package requires at least version 3.4.
|
1 |
|
Microsoft.Data.SqlClient.Extensions.Abstractions
Microsoft.Data.SqlClient Extensions Abstractions
|
1 |
.NET Standard 2.0
- No dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 1.0.0-preview1.26064.3 | 1 | 3/6/2026 |