metadata

package
v0.0.0-...-44e8350 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultEndpointPath = "api/v1/targets/metadata"

DefaultEndpointPath is the default HTTP path on which Prometheus serves the target metadata endpoint.

View Source
const MetricTypeUntyped = "untyped"

The old metric type value for textparse.MetricTypeUnknown that is used in Prometheus 2.4 and earlier.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	// contains filtered or unexported fields
}

Cache populates and maintains a cache of metric metadata it retrieves from a given Prometheus server. Its methods are not safe for concurrent use.

func NewCache

func NewCache(client *http.Client, promURL *url.URL, staticMetadata []*Entry) *Cache

NewCache returns a new cache that gets populated by the metadata endpoint at the given URL. It uses the default endpoint path if no specific path is provided.

func (*Cache) Get

func (c *Cache) Get(ctx context.Context, job, instance, metric string) (*Entry, error)

Get returns metadata for the given metric and job. If the metadata is not in the cache, it blocks until we have retrieved it from the Prometheus server. If no metadata is found in the Prometheus server, a matching entry from the static metadata or nil is returned.

type Entry

type Entry struct {
	Metric     string
	MetricType textparse.MetricType
	ValueType  metric_pb.MetricDescriptor_ValueType
	Help       string
}

Jump to

Keyboard shortcuts

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