Caution
The SignalFx Instrumentation for .NET is deprecated as of February 21, 2024 and will reach End of Support on February 21 2025. Until then, only critical security fixes and bug fixes will be provided. After the date, the library will be archived and no longer maintained.
New customers instrumenting the .NET ecosystem should use the Splunk Distribution of OpenTelemetry .NET. Existing customers should consider migrating to Splunk Distribution of OpenTelemetry .NET which offers similar capabilities. To learn how to migrate, see Migrate from the SignalFx .NET Instrumentation.
Metrics collected by the SignalFx Instrumentation for .NET π
The SignalFx Instrumentation for .NET can collect runtime and trace metrics. To learn about the different metric types, see Metric types.
Activate metrics collection π
To activate the collection of .NET runtime and trace metrics, see Metrics settings.
Note
NetRuntime metrics are always collected if memory profiling is activated.
Default metric dimensions π
The following dimensions are automatically added to all metrics exported by the agent:
Dimension |
Description |
---|---|
|
Deployment environment, if present. |
|
Name of the service. |
|
The .NET process identifier (PID). |
|
Identifier of the container, if applicable. |
|
Name of the host. |
|
Name of the SDK, set to |
|
Language of the SDK, set to |
|
Version of the SDK. |
|
Version of the Splunk distribution. |
.NET runtime metrics π
The SignalFx Instrumentation for .NET can collect the following runtime metrics:
Metric |
Type |
Description |
---|---|---|
|
Gauge |
Count of exceptions since the previous observation. |
|
Cumulative counter |
Number of garbage collections since the process started. |
|
Gauge |
Heap size, as observed during the last garbage collection. |
|
Gauge |
Count of bytes currently in use by live objects in the GC heap. |
|
Cumulative counter |
Count of bytes allocated on the managed GC heap since the process started. Only available for .NET Core. |
|
Gauge |
Amount of committed virtual memory for the managed GC heap, as observed during the last garbage collection. Only available for .NET 6 and higher. |
|
Counter |
Number of milliseconds spent in GC pause. Only available for .NET Core. |
|
Cumulative counter |
Contentions count when trying to acquire a monitor lock since the process started. |
|
Gauge |
Number of thread pool threads, as observed during the last measurement. Only available for .NET Core. |
Process metrics π
The SignalFx Instrumentation for .NET can collect the following process metrics:
Metric |
Type |
Description |
---|---|---|
|
Gauge |
The amount of physical memory allocated for this process. |
|
Gauge |
The amount of committed virtual memory for this process. |
|
CumulativeCounter |
Total CPU seconds broken down by different states, such as user and system. |
|
Gauge |
Difference in |
|
Gauge |
Process threads count. |
ASP.NET Core metrics π
The SignalFx Instrumentation for .NET can collect the following ASP.NET Core metrics:
Metric |
Type |
Description |
---|---|---|
|
Gauge |
Number of active HTTP connections to the web server. Only available for .NET Core. |
|
Gauge |
Length of the HTTP connection queue. Only available for .NET Core. |
|
Gauge |
Number of HTTP connections to the web server. Only available for .NET Core. |
|
Gauge |
Number of HTTP requests that have started, but havenβt stopped yet. Only available for .NET Core. |
|
Gauge |
Number of failed HTTP requests received by the server. Only available for .NET Core. |
|
Gauge |
Length of the HTTP request queue. |
|
Gauge |
Number of HTTP requests received by the server. Only available for .NET Core. |
Additional permissions for IIS π
The .NET Framework collects metrics using performance counters. To let service accounts and IIS application pool accounts access counter data, add them to the Performance Monitoring Users
group.
IIS application pools use special accounts that donβt appear in the list of users. To add IIS application pool accounts to the Performance Monitoring Users
group, search for IIS APPPOOL\<name-of-the-pool>
. For example, the user for the DefaultAppPool
pool is IIS APPPOOL\DefaultAppPool
.
The following example shows how to add an IIS application pool account to the Performance Monitoring Users
group from a command prompt with Administrator permissions:
net localgroup "Performance Monitor Users" "IIS APPPOOL\DefaultAppPool" /add
Trace metrics π
The SignalFx Instrumentation for .NET can collect the following trace metrics:
Metric |
Type |
Description |
---|---|---|
|
Counter |
Number of traces pushed into the queue. |
|
Counter |
Number of traces pulled from the queue for flushing. |
|
Counter |
Number of spans pushed into the queue. |
|
Counter |
Number of spans pulled from the queue for flushing. |
|
Counter |
Number of traces dropped due to a full queue. |
|
Counter |
Number of spans dropped due to a full queue. |
|
Gauge |
Number of tracers. |