metrics

package
v1.29.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 31, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package metrics provides Prometheus metrics for Contour.

Index

Constants

View Source
const (
	BuildInfoGauge = "contour_build_info"

	HTTPProxyTotalGauge     = "contour_httpproxy"
	HTTPProxyRootTotalGauge = "contour_httpproxy_root"
	HTTPProxyInvalidGauge   = "contour_httpproxy_invalid"
	HTTPProxyValidGauge     = "contour_httpproxy_valid"
	HTTPProxyOrphanedGauge  = "contour_httpproxy_orphaned"

	DAGCacheObjectGauge = "contour_dag_cache_object"
	DAGRebuildGauge     = "contour_dagrebuild_timestamp"
	DAGRebuildTotal     = "contour_dagrebuild_total"
	DAGRebuildSeconds   = "contour_dagrebuild_seconds"
)

Variables

This section is empty.

Functions

func Handler added in v1.4.0

func Handler(registry *prometheus.Registry) http.Handler

Handler returns a http Handler for a metrics endpoint.

Types

type Meta

type Meta struct {
	VHost, Namespace string
}

Meta holds the vhost and namespace of a metric object

type Metrics

type Metrics struct {
	DAGRebuildSeconds           prometheus.Summary
	CacheHandlerOnUpdateSummary prometheus.Summary
	EventHandlerOperations      *prometheus.CounterVec
	// contains filtered or unexported fields
}

Metrics provide Prometheus metrics for the app

func NewMetrics

func NewMetrics(registry *prometheus.Registry) *Metrics

NewMetrics creates a new set of metrics and registers them with the supplied registry.

NOTE: when adding new metrics, update Zero() and run `./hack/generate-metrics-doc.go` using `make generate-metrics-docs` to regenerate the metrics documentation.

func (*Metrics) SetDAGCacheObjectMetric added in v1.25.0

func (m *Metrics) SetDAGCacheObjectMetric(kind string, count int)

SetDAGCacheObjectMetric records the total number of items that are currently in the DAG cache.

func (*Metrics) SetDAGLastRebuilt added in v1.0.0

func (m *Metrics) SetDAGLastRebuilt(ts time.Time)

SetDAGLastRebuilt records the last time the DAG was rebuilt.

func (*Metrics) SetDAGRebuiltTotal added in v1.13.0

func (m *Metrics) SetDAGRebuiltTotal()

SetDAGRebuiltTotal records the total number of times DAG was rebuilt

func (*Metrics) SetHTTPProxyMetric added in v1.0.0

func (m *Metrics) SetHTTPProxyMetric(metrics RouteMetric)

SetHTTPProxyMetric sets metric values for a set of HTTPProxies

func (*Metrics) SetStatusUpdateConflict added in v1.26.0

func (m *Metrics) SetStatusUpdateConflict(kind string)

func (*Metrics) SetStatusUpdateDuration added in v1.26.0

func (m *Metrics) SetStatusUpdateDuration(duration time.Duration, kind string, onError bool)

func (*Metrics) SetStatusUpdateFailed added in v1.26.0

func (m *Metrics) SetStatusUpdateFailed(kind string)

func (*Metrics) SetStatusUpdateNoop added in v1.26.0

func (m *Metrics) SetStatusUpdateNoop(kind string)

func (*Metrics) SetStatusUpdateSuccess added in v1.26.0

func (m *Metrics) SetStatusUpdateSuccess(kind string)

func (*Metrics) SetStatusUpdateTotal added in v1.26.0

func (m *Metrics) SetStatusUpdateTotal(kind string)

func (*Metrics) Zero added in v1.0.0

func (m *Metrics) Zero()

Zero sets zero values for all the registered metrics. This is needed for generating metrics documentation. The prometheus.Registry() won't emit the metric metadata until the metric has been set.

type RouteMetric added in v1.0.0

type RouteMetric struct {
	Total    map[Meta]int
	Valid    map[Meta]int
	Invalid  map[Meta]int
	Orphaned map[Meta]int
	Root     map[Meta]int
}

RouteMetric stores various metrics for HTTPProxy objects

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL