- Counterのrateは、RefreshIntervalの間に起こったCounter.Addの合計値
- ObservableCounterのrateは、
[最新の値]-[ひとつ前の値]
の値
- 得られる値はRefreshIntervalの間に起こったHistogram.Recordの下記三つの値
- 50%ile
- 95%ile
- 99%ile
- 最後に記録された値をそのまま表示
using System.Diagnostics.Metrics; | |
{ | |
Console.WriteLine(System.Diagnostics.Process.GetCurrentProcess().Id); | |
using var meter = new Meter("appmeter"); | |
int obscnt = 1; | |
var counter = meter.CreateCounter<int>("counter1", "unit", "desc"); | |
var histo = meter.CreateHistogram<int>("histogram1", "unit", "desc"); | |
var gauge = meter.CreateObservableGauge<int>("gauge1", () => 2, "unit2", "desc2"); | |
var obscounter = meter.CreateObservableCounter<int>("obscounter1", () => { obscnt+=2;return obscnt; }, "unit2", "desc2"); | |
async Task CounterTask(CancellationToken ct) | |
{ | |
int count = 2; | |
int tagval = 1; | |
while(!ct.IsCancellationRequested) | |
{ | |
await Task.Delay(500).ConfigureAwait(false); | |
if(counter.Enabled) | |
{ | |
counter.Add(count, | |
new KeyValuePair<string, object?>("tag1", tagval) | |
); | |
} | |
if(histo.Enabled) | |
{ | |
histo.Record(count, new KeyValuePair<string, object?>("tag2", tagval)); | |
} | |
tagval = tagval ^ 3; | |
} | |
} | |
using var cts = new CancellationTokenSource(); | |
await Task.WhenAll(CounterTask(cts.Token), Task.Run(() => | |
{ | |
Console.ReadLine(); | |
cts.Cancel(); | |
})); | |
} |
[最新の値]-[ひとつ前の値]
の値Event Name | Time MSec | Process Name | Rest | |
---|---|---|---|---|
System.Diagnostics.Metrics/CounterRateValuePublished | 2029.873 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="obscounter1" unit="unit2" tags="" rate="" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 2029.932 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=1" rate="4" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 2029.939 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=2" rate="4" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 4019.756 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="obscounter1" unit="unit2" tags="" rate="2" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 4019.779 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=1" rate="4" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 4019.793 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=2" rate="4" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 6025.631 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="obscounter1" unit="unit2" tags="" rate="2" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 6025.658 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=1" rate="4" | |
System.Diagnostics.Metrics/CounterRateValuePublished | 6025.679 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="counter1" unit="unit" tags="tag1=2" rate="4" |
Event Name | Time MSec | Process Name | Rest | |
---|---|---|---|---|
System.Diagnostics.Metrics/GaugeValuePublished | 2029.968 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="gauge1" unit="unit2" tags="" lastValue="2" | |
System.Diagnostics.Metrics/GaugeValuePublished | 4019.812 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="gauge1" unit="unit2" tags="" lastValue="2" | |
System.Diagnostics.Metrics/GaugeValuePublished | 6025.699 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="gauge1" unit="unit2" tags="" lastValue="2" |
Event Name | Time MSec | Process Name | Rest | |
---|---|---|---|---|
System.Diagnostics.Metrics/HistogramValuePublished | 2029.743 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=1" quantiles="0.5=2;0.95=2;0.99=2" | |
System.Diagnostics.Metrics/HistogramValuePublished | 2029.809 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=2" quantiles="0.5=2;0.95=2;0.99=2" | |
System.Diagnostics.Metrics/HistogramValuePublished | 4019.665 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=1" quantiles="0.5=2;0.95=2;0.99=2" | |
System.Diagnostics.Metrics/HistogramValuePublished | 4019.736 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=2" quantiles="0.5=2;0.95=2;0.99=2" | |
System.Diagnostics.Metrics/HistogramValuePublished | 6025.520 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=1" quantiles="0.5=2;0.95=2;0.99=2" | |
System.Diagnostics.Metrics/HistogramValuePublished | 6025.607 | Process(6560) (6560) | HasStack="True" ThreadID="5,728" ProcessorNumber="0" sessionId="b4dabb67-0fab-4d82-b4e5-67349009a1bf" meterName="appmeter" meterVersion="" instrumentName="histogram1" unit="unit" tags="tag2=2" quantiles="0.5=2;0.95=2;0.99=2" |