<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="10.0.4" />

System.Diagnostics.Metrics.Counter<T>

public sealed class Counter<T> : Instrument<T> where T : struct
Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total.
namespace System.Diagnostics.Metrics { public sealed class Counter<T> : Instrument<T> where T : struct { public void Add(T delta); public void Add(T delta, KeyValuePair<string, object> tag); public void Add(T delta, KeyValuePair<string, object> tag1, KeyValuePair<string, object> tag2); public void Add(T delta, KeyValuePair<string, object> tag1, KeyValuePair<string, object> tag2, KeyValuePair<string, object> tag3); public void Add(T delta, ReadOnlySpan<KeyValuePair<string, object>> tags); public void Add(T delta, params KeyValuePair<string, object>[] tags); public void Add(T delta, ref TagList tagList); } }