Package metrics provides Prometheus metrics for Contour.



    View Source
    const (
    	BuildInfoGauge = "contour_build_info"
    	DeprecatedHTTPProxyTotalGauge     = "contour_httpproxy_total"
    	DeprecatedHTTPProxyRootTotalGauge = "contour_httpproxy_root_total"
    	DeprecatedHTTPProxyInvalidGauge   = "contour_httpproxy_invalid_total"
    	DeprecatedHTTPProxyValidGauge     = "contour_httpproxy_valid_total"
    	DeprecatedHTTPProxyOrphanedGauge  = "contour_httpproxy_orphaned_total"
    	HTTPProxyTotalGauge     = "contour_httpproxy"
    	HTTPProxyRootTotalGauge = "contour_httpproxy_root"
    	HTTPProxyInvalidGauge   = "contour_httpproxy_invalid"
    	HTTPProxyValidGauge     = "contour_httpproxy_valid"
    	HTTPProxyOrphanedGauge  = "contour_httpproxy_orphaned"
    	DAGRebuildGauge = "contour_dagrebuild_timestamp"
    	DAGRebuildTotal = "contour_dagrebuild_total"


    This section is empty.


    func Handler

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

      Handler returns a http Handler for a metrics endpoint.


      type Meta

      type Meta struct {
      	VHost, Namespace string

        Meta holds the vhost and namespace of a metric object

        type Metrics

        type Metrics struct {
        	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) SetDAGLastRebuilt

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

              SetDAGLastRebuilt records the last time the DAG was rebuilt.

              func (*Metrics) SetDAGRebuiltTotal

              func (m *Metrics) SetDAGRebuiltTotal()

                SetDAGRebuiltTotal records the total number of times DAG was rebuilt

                func (*Metrics) SetHTTPProxyMetric

                func (m *Metrics) SetHTTPProxyMetric(metrics RouteMetric)

                  SetHTTPProxyMetric sets metric values for a set of HTTPProxies

                  func (*Metrics) Zero

                  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

                    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

                      Source Files