Documentation
¶
Index ¶
Constants ¶
const ( // Untyped is the metric type of metrics that have no specified type Untyped MetricType = "" // CounterType is a cumulative metric that represents a single monotonically increasing counter whose value can only increase or be reset to zero on restart. CounterType = "counter" // GaugeType is a metric that represents a single numerical value that can arbitrarily go up and down. GaugeType = "gauge" // HistogramType samples observations (usually things like request durations or response sizes) and counts them in configurable buckets. HistogramType = "histogram" // SummaryType samples observations (usually things like request durations and response sizes). While it also provides a total count of observations and a sum of all observed values, it calculates configurable quantiles over a sliding time window. SummaryType = "summary" )
Variables ¶
var ErrParseFail = fmt.Errorf("failed to parse line")
ErrParseFail is returned when parsing of metrics data fails
var ErrUnexpectedHTTPStatusCode = fmt.Errorf("unexpected HTTP status code")
ErrUnexpectedHTTPStatusCode is returned when the HTTP status is not 200
Functions ¶
This section is empty.
Types ¶
type HistogramBucket ¶ added in v0.3.0
HistogramBucket define the upper bound and value
type HistogramMetric ¶ added in v0.3.0
type HistogramMetric struct {
Metric
Buckets []*HistogramBucket
Sum float64
Count float64
}
HistogramMetric is a metric of type HistogramType
func UpgradeHistogram ¶ added in v0.3.0
func UpgradeHistogram(m *Metric) (*HistogramMetric, error)
UpgradeHistogram upgrades a Metric of type HistorgramType to a HistogramMetric
type Metric ¶
type Metric struct {
Name string
Description string
Type MetricType
Samples []*Sample
}
Metric is a parsed metric from the endpoint.
type MetricType ¶
type MetricType string
MetricType describes the type of the metric that was collected. See https://prometheus.io/docs/concepts/metric_types/
type PromMetricsClient ¶
type PromMetricsClient struct {
URL string
}
PromMetricsClient is a simple client that fetches and parses metrics from a prometheus /metrics endpoint.
func (*PromMetricsClient) GetMetrics ¶
func (c *PromMetricsClient) GetMetrics() ([]*Metric, error)
GetMetrics retrieves metrics from the stored URL
type SummaryMetric ¶ added in v0.3.0
type SummaryMetric struct {
Metric
Quantiles []*SummaryQuantile
Sum float64
Count float64
}
SummaryMetric is a metric of type SummaryType
func UpgradeSummary ¶ added in v0.3.0
func UpgradeSummary(m *Metric) (*SummaryMetric, error)
UpgradeSummary upgrades a Metric of type SummaryType to a SummaryMetric
type SummaryQuantile ¶ added in v0.3.0
SummaryQuantile defines the cut point and value