Docs » Configure application receivers » Configure application receivers for languages » Microsoft .NET

Microsoft .NET 🔗

Description 🔗

The Splunk Distribution of OpenTelemetry Collector provides this integration as the dotnet monitor via the Smart Agent Receiver.

This monitor reports metrics for .NET applications. This monitor is only available on Windows.

See signalfx-agent/pkg/monitors/dotnet/ for the monitor source.

Windows Performance Counters 🔗

The underlying source for these metrics are Windows Performance Counters. Most of the performance counters that we query in this monitor are actually Gauges that represent rates per second and percentages.

This monitor reports the instantaneous values for these Windows Performance Counters. This means that in a collection interval, spikes could occur on the Performance Counters. The best way to mitigate this limitation is to increase the reporting interval on this monitor to collect more frequently.

The following is a list of the most critical .NET performance counters:

  • Exceptions

  • Logical threads

  • Physical threads

  • Heap bytes

  • Time in GC

  • Committed bytes

  • Pinned objects

Installation 🔗

This monitor is available in the SignalFx Smart Agent Receiver, which is part of the Splunk Distribution of OpenTelemetry Collector.

To install this integration:

  1. Deploy the Splunk Distribution of OpenTelemetry Collector to your host or container platform.

  2. Configure the monitor, as described in the next section.

Configuration 🔗

The Splunk Distribution of OpenTelemetry Collector allows embedding a Smart Agent monitor configuration in an associated Smart Agent Receiver instance.

Note: Providing a .NET monitor entry in your Smart Agent or Collector configuration is required for its use. Use the appropriate form for your agent type.

Smart Agent 🔗

To activate this monitor in the Smart Agent, add the following to your agent configuration:

monitors:  # All monitor config goes under this key
  - type: dotnet
    ...  # Additional config

See Smart Agent example configuration for an autogenerated example of a YAML configuration file, with default values where applicable.

Splunk Distribution of OpenTelemetry Collector 🔗

To activate this monitor in the OpenTelemetry Collector, add the following to your agent configuration:

receivers:
  smartagent/dotnet:
    type: dotnet
    ...  # Additional config

To complete the monitor activation, you must also include the smartagent/dotnet receiver item in a metrics pipeline. To do this, add the receiver item to the service > pipelines > metrics > receivers section of your configuration file.

See configuration examples for specific use cases that show how the collector can integrate and complement existing environments.

Configuration settings 🔗

The following table shows the configuration options for this monitor:

Option Required Type Description
counterRefreshInterval no int64 Number of seconds that wildcards in counter paths should be expanded and how often to refresh counters from configuration. (default: 60s)
printValid no bool Print out the configurations that match available performance counters. This option is used for debugging. (default: false)

Metrics 🔗

This monitor emits all metrics by default. However, none of these metrics are categorized as container/host metrics. These metrics are all custom.