Documentation ¶
Index ¶
- Constants
- func Compare(a, b Labels) int
- func Equal(ls, o Labels) bool
- type Builder
- type FastRegexMatcher
- type Label
- type Labels
- func (ls Labels) Bytes(buf []byte) []byte
- func (ls Labels) BytesWithLabels(buf []byte, names ...string) []byte
- func (ls Labels) BytesWithoutLabels(buf []byte, names ...string) []byte
- func (ls Labels) Copy() Labels
- func (ls Labels) Get(name string) string
- func (ls Labels) Has(name string) bool
- func (ls Labels) HasDuplicateLabelNames() (string, bool)
- func (ls Labels) Hash() uint64
- func (ls Labels) HashForLabels(b []byte, names ...string) (uint64, []byte)
- func (ls Labels) HashWithoutLabels(b []byte, names ...string) (uint64, []byte)
- func (ls Labels) Len() int
- func (ls Labels) Less(i, j int) bool
- func (ls Labels) Map() map[string]string
- func (ls Labels) MarshalJSON() ([]byte, error)
- func (ls Labels) MarshalYAML() (interface{}, error)
- func (ls Labels) MatchLabels(on bool, names ...string) Labels
- func (ls Labels) String() string
- func (ls Labels) Swap(i, j int)
- func (ls *Labels) UnmarshalJSON(b []byte) error
- func (ls *Labels) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (ls Labels) WithoutEmpty() Labels
- type MatchType
- type Matcher
- type Selector
- type Slice
Constants ¶
const ( MetricName = "__name__" AlertName = "alertname" BucketLabel = "le" InstanceName = "instance" )
Well-known label names used by Prometheus components.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder allows modifying Labels.
func (*Builder) Keep ¶ added in v0.37.0
Keep removes all labels from the base except those with the given names.
func (*Builder) Labels ¶
Labels returns the labels from the builder, adding them to res if non-nil. Argument res can be the same as b.base, if caller wants to overwrite that slice. If no modifications were made, the original labels are returned.
type FastRegexMatcher ¶
type FastRegexMatcher struct {
// contains filtered or unexported fields
}
func NewFastRegexMatcher ¶
func NewFastRegexMatcher(v string) (*FastRegexMatcher, error)
func (*FastRegexMatcher) GetRegexString ¶
func (m *FastRegexMatcher) GetRegexString() string
func (*FastRegexMatcher) MatchString ¶
func (m *FastRegexMatcher) MatchString(s string) bool
type Labels ¶
type Labels []Label
Labels is a sorted set of labels. Order has to be guaranteed upon instantiation.
func EmptyLabels ¶ added in v0.39.0
func EmptyLabels() Labels
EmptyLabels returns n empty Labels value, for convenience.
func FromStrings ¶
FromStrings creates new labels from pairs of strings.
func New ¶
New returns a sorted Labels from the given labels. The caller has to guarantee that all label names are unique.
func ReadLabels ¶
ReadLabels reads up to n label sets in a JSON formatted file fn. It is mostly useful to load testing data.
func (Labels) Bytes ¶
Bytes returns ls as a byte slice. It uses an byte invalid character as a separator and so should not be used for printing.
func (Labels) BytesWithLabels ¶ added in v0.37.0
BytesWithLabels is just as Bytes(), but only for labels matching names. 'names' have to be sorted in ascending order.
func (Labels) BytesWithoutLabels ¶ added in v0.37.0
BytesWithoutLabels is just as Bytes(), but only for labels not matching names. 'names' have to be sorted in ascending order.
func (Labels) Get ¶
Get returns the value for the label with the given name. Returns an empty string if the label doesn't exist.
func (Labels) HasDuplicateLabelNames ¶
HasDuplicateLabelNames returns whether ls has duplicate label names. It assumes that the labelset is sorted.
func (Labels) HashForLabels ¶
HashForLabels returns a hash value for the labels matching the provided names. 'names' have to be sorted in ascending order.
func (Labels) HashWithoutLabels ¶
HashWithoutLabels returns a hash value for all labels except those matching the provided names. 'names' have to be sorted in ascending order.
func (Labels) MarshalJSON ¶
MarshalJSON implements json.Marshaler.
func (Labels) MarshalYAML ¶
MarshalYAML implements yaml.Marshaler.
func (Labels) MatchLabels ¶
MatchLabels returns a subset of Labels that matches/does not match with the provided label names based on the 'on' boolean. If on is set to true, it returns the subset of labels that match with the provided label names and its inverse when 'on' is set to false.
func (*Labels) UnmarshalJSON ¶
UnmarshalJSON implements json.Unmarshaler.
func (*Labels) UnmarshalYAML ¶
UnmarshalYAML implements yaml.Unmarshaler.
func (Labels) WithoutEmpty ¶
WithoutEmpty returns the labelset without empty labels. May return the same labelset.
type Matcher ¶
type Matcher struct { Type MatchType Name string Value string // contains filtered or unexported fields }
Matcher models the matching of a label.
func MustNewMatcher ¶
MustNewMatcher panics on error - only for use in tests!
func NewMatcher ¶
NewMatcher returns a matcher object.
func (*Matcher) GetRegexString ¶
GetRegexString returns the regex string.