dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
14.54k stars 4.54k forks source link

Instrument ADO.NET/System.Data with EventCounters (replacement for PerformanceCounters) #18048

Open roji opened 7 years ago

roji commented 7 years ago

In .NET Framework ADO.NET publishes performance counters; these have been removed in .NET Core because they're not cross-platform.

There are several conversations about bringing back some form of cross-platform performance counters, see dotnet/runtime#15735, dotnet/runtime#17015, probably based on EventCounter. This also needs to happen for ADO.NET.

karelz commented 7 years ago

It should be fairly straightforward to add EventCounters in System.Data. If there's any doubt how to use EventCounters, please work with @vancem.