App Metrics Fork me on GitHub
Show / Hide Table of Contents

Namespace App.Metrics.Formatters.Json

Classes

ApdexMetric

CounterMetric

Counter metric types track how many times something happens, they can incremented or decremented.

Counters represent a 64-bit integer value.

Counters provide the ability to track a counter for each item in a finite set, as well as tracking a per item count the overall percentage is also recorded. This is useful for example if we needed to track the total number of emails sent but also the count of each type of emails sent.

CounterMetric.SetItem

GaugeMetric

Gauge metric types measure the value of a particular thing at a particular time, it represents an instantaneous value.

Gauges represent a double value.

HistogramMetric

Histogram metric types track the statistical distribution of a set of values. They allow you to measure the min, mean, max, standard deviation of values and also quantiles such as the median, 95th percentile, 98th percentile etc.

To avoid unbound memory usage, the histogram values are genreated from a of values. This is done by sampling the data as it goes through by maintaining a small manageable reservoir which is statistically representative of the data stream as a whole, allowing us to quickly calculate the quantiles which are valid approximations of the actual quantiles. https://en.wikipedia.org/wiki/Reservoir_sampling

Histograms also allow us to track user values, where for all user values provided the min, max and last user value values is recorded.

JsonEnvironmentInfoResponseWriter

JsonHealthResponseWriter

JsonMetricsResponseWriter

JsonMetricsTextResponseWriter

MeterMetric

Meter metric types are increment-only counters that also measure the rate of events over time.

The mean rate is recorded, but is only generally used for trivia as it represents the total rate for the lifetime of your application, not offering a sense of recency.

Other than the mean rate, meters also are recorded using three different exponentially-weighted moving average rates, 1 min, 5 min and 15 min moving averages which do provide a sense of recency.

Meters also provide the ability to track the rate for each item in a finite set, as well as tracking a per item rate the overall percentage is also recorded. This is useful for example if we needed to track the total number of emails sent but also the rate at which each type of email is sent.

MeterMetric.SetItem

MetricBase

MetricContextSerializationExtensions

MetricData

MetricsContext

MetricsContext's are a way of grouping metrics withing a context, for example we can record all database related metrics in a "Application.Database" Context. Metric names can be duplicated across contexts

TimerMetric

Timer metric types are essentially a special case of Histogram

As well as providing a Histogram of the duration of a type of event, timers also provide a MeterMetric of the rate of the events occurrence.

Like Histograms, timers also allow us to track user values, where for all user values provided the min, max and last user value values is recorded.

TimerMetric.HistogramData

TimerMetric.RateData

Back to top Copyright © 2017 Allan Hardy
Generated by DocFX