Microsoft.Data.SqlClient.Internal.Logging
1.0.0
Prefix Reserved
dotnet add package Microsoft.Data.SqlClient.Internal.Logging --version 1.0.0
NuGet\Install-Package Microsoft.Data.SqlClient.Internal.Logging -Version 1.0.0
<PackageReference Include="Microsoft.Data.SqlClient.Internal.Logging" Version="1.0.0" />
<PackageVersion Include="Microsoft.Data.SqlClient.Internal.Logging" Version="1.0.0" />
<PackageReference Include="Microsoft.Data.SqlClient.Internal.Logging" />
paket add Microsoft.Data.SqlClient.Internal.Logging --version 1.0.0
#r "nuget: Microsoft.Data.SqlClient.Internal.Logging, 1.0.0"
#:package Microsoft.Data.SqlClient.Internal.Logging@1.0.0
#addin nuget:?package=Microsoft.Data.SqlClient.Internal.Logging&version=1.0.0
#tool nuget:?package=Microsoft.Data.SqlClient.Internal.Logging&version=1.0.0
Microsoft.Data.SqlClient.Internal.Logging
⚠️ Internal Package — Do Not Reference Directly
This package is intended for internal use by the SqlClient suite of packages only. It is not designed for direct consumption by application code and may undergo breaking changes without notice.
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.Internal.Logging
Or via the Package Manager Console:
Install-Package Microsoft.Data.SqlClient.Internal.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
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Microsoft.Data.SqlClient.Internal.Logging:
| Package | 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. |
|
|
Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider
Always Encrypted Azure Key Vault Provider for Microsoft.Data.SqlClient. This library enables .NET applications to use Microsoft Azure Key Vault with Always Encrypted in Microsoft Azure SQL Database and Microsoft SQL Server. The library includes the column master key store provider that allows client applications to access data when a column master key is stored in Microsoft Azure Key Vault. For more information on Always Encrypted, please refer to: https://aka.ms/AlwaysEncrypted. Use this library only with the Microsoft.Data.SqlClient (https://www.nuget.org/packages/Microsoft.Data.SqlClient) client driver. |
|
|
Microsoft.Data.SqlClient.Extensions.Abstractions
Microsoft.Data.SqlClient Extensions Abstractions |
|
|
Microsoft.Data.SqlClient.Extensions.Azure
Microsoft.Data.SqlClient Extensions Azure |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 534 | 3/17/2026 |