client_golang: github.com/prometheus/client_golang/prometheus/testutil/promlint Index | Files

package promlint

import "github.com/prometheus/client_golang/prometheus/testutil/promlint"

Package promlint provides a linter for Prometheus metrics.

Index

Package Files

promlint.go

type Linter Uses

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

A Linter is a Prometheus metrics linter. It identifies issues with metric names, types, and metadata, and reports them to the caller.

func New Uses

func New(r io.Reader) *Linter

New creates a new Linter that reads an input stream of Prometheus metrics in the Prometheus text exposition format.

func NewWithMetricFamilies Uses

func NewWithMetricFamilies(mfs []*dto.MetricFamily) *Linter

NewWithMetricFamilies creates a new Linter that reads from a slice of MetricFamily protobuf messages.

func (*Linter) Lint Uses

func (l *Linter) Lint() ([]Problem, error)

Lint performs a linting pass, returning a slice of Problems indicating any issues found in the metrics stream. The slice is sorted by metric name and issue description.

type Problem Uses

type Problem struct {
    // The name of the metric indicated by this Problem.
    Metric string

    // A description of the issue for this Problem.
    Text string
}

A Problem is an issue detected by a Linter.

Package promlint imports 7 packages (graph) and is imported by 6 packages. Updated 2020-06-02. Refresh now. Tools for package owners.