feat: support inject global labels

Signed-off-by: macro <macrohe@tencent.com>
This commit is contained in:
macro 2021-12-02 11:55:52 +08:00
parent fae515f739
commit 72d3d21351
2 changed files with 11 additions and 0 deletions

View file

@ -68,6 +68,11 @@ func (b *Exporter) Listen(e <-chan event.Events) {
return
}
for _, event := range events {
if b.Mapper.GlobalLabels != nil {
for k, v := range b.Mapper.GlobalLabels {
event.Labels()[k] = v
}
}
b.handleEvent(event)
}
}

View file

@ -54,6 +54,8 @@ type MetricMapper struct {
MappingsCount prometheus.Gauge
Logger log.Logger
GlobalLabels map[string]string `yaml:"global_labels"`
}
type SummaryOptions struct {
@ -85,6 +87,10 @@ func (m *MetricMapper) InitFromYAMLString(fileContents string) error {
return err
}
if len(n.GlobalLabels) > 0 {
m.GlobalLabels = n.GlobalLabels
}
if len(n.Defaults.HistogramOptions.Buckets) == 0 {
n.Defaults.HistogramOptions.Buckets = prometheus.DefBuckets
}