var labelValueAllowLists … var allowListLock … type KubeOpts … // BuildFQName joins the given three name components by "_". Empty name // components are ignored. If the name parameter itself is empty, an empty // string is returned, no matter what. Metric implementations included in this // library use this function internally to generate the fully-qualified metric // name from the name component in their Opts. Users of the library will only // need this function if they implement their own Metric or instantiate a Desc // (with NewDesc) directly. func BuildFQName(namespace, subsystem, name string) string { … } type StabilityLevel … const INTERNAL … const ALPHA … const BETA … const STABLE … // setDefaults takes 'ALPHA' in case of empty. func (sl *StabilityLevel) setDefaults() { … } type CounterOpts … // Modify help description on the metric description. func (o *CounterOpts) markDeprecated() { … } // annotateStabilityLevel annotates help description on the metric description with the stability level // of the metric func (o *CounterOpts) annotateStabilityLevel() { … } // convenience function to allow easy transformation to the prometheus // counterpart. This will do more once we have a proper label abstraction func (o *CounterOpts) toPromCounterOpts() prometheus.CounterOpts { … } type GaugeOpts … // Modify help description on the metric description. func (o *GaugeOpts) markDeprecated() { … } // annotateStabilityLevel annotates help description on the metric description with the stability level // of the metric func (o *GaugeOpts) annotateStabilityLevel() { … } // convenience function to allow easy transformation to the prometheus // counterpart. This will do more once we have a proper label abstraction func (o *GaugeOpts) toPromGaugeOpts() prometheus.GaugeOpts { … } type HistogramOpts … // Modify help description on the metric description. func (o *HistogramOpts) markDeprecated() { … } // annotateStabilityLevel annotates help description on the metric description with the stability level // of the metric func (o *HistogramOpts) annotateStabilityLevel() { … } // convenience function to allow easy transformation to the prometheus // counterpart. This will do more once we have a proper label abstraction func (o *HistogramOpts) toPromHistogramOpts() prometheus.HistogramOpts { … } type TimingHistogramOpts … // Modify help description on the metric description. func (o *TimingHistogramOpts) markDeprecated() { … } // annotateStabilityLevel annotates help description on the metric description with the stability level // of the metric func (o *TimingHistogramOpts) annotateStabilityLevel() { … } // convenience function to allow easy transformation to the prometheus // counterpart. This will do more once we have a proper label abstraction func (o *TimingHistogramOpts) toPromHistogramOpts() promext.TimingHistogramOpts { … } type SummaryOpts … // Modify help description on the metric description. func (o *SummaryOpts) markDeprecated() { … } // annotateStabilityLevel annotates help description on the metric description with the stability level // of the metric func (o *SummaryOpts) annotateStabilityLevel() { … } var defObjectives … // convenience function to allow easy transformation to the prometheus // counterpart. This will do more once we have a proper label abstraction func (o *SummaryOpts) toPromSummaryOpts() prometheus.SummaryOpts { … } type MetricLabelAllowList … func (allowList *MetricLabelAllowList) ConstrainToAllowedList(labelNameList, labelValueList []string) { … } func (allowList *MetricLabelAllowList) ConstrainLabelMap(labels map[string]string) { … } func SetLabelAllowListFromCLI(allowListMapping map[string]string) { … } func SetLabelAllowListFromManifest(manifest string) { … }