|
|
|
|
@ -11,6 +11,7 @@ import ( |
|
|
|
|
"github.com/prometheus/prometheus/discovery" |
|
|
|
|
"github.com/prometheus/prometheus/discovery/dns" |
|
|
|
|
"github.com/prometheus/prometheus/model/labels" |
|
|
|
|
"github.com/prometheus/prometheus/model/relabel" |
|
|
|
|
"github.com/stretchr/testify/require" |
|
|
|
|
|
|
|
|
|
"github.com/grafana/loki/pkg/util" |
|
|
|
|
@ -325,6 +326,54 @@ func TestBuildNotifierConfig(t *testing.T) { |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: "with alert relabel config", |
|
|
|
|
cfg: &Config{ |
|
|
|
|
AlertmanagerURL: "http://alertmanager.default.svc.cluster.local/alertmanager", |
|
|
|
|
ExternalLabels: []labels.Label{ |
|
|
|
|
{Name: "region", Value: "us-east-1"}, |
|
|
|
|
}, |
|
|
|
|
AlertRelabelConfigs: []*relabel.Config{ |
|
|
|
|
{ |
|
|
|
|
SourceLabels: model.LabelNames{"severity"}, |
|
|
|
|
Regex: relabel.MustNewRegexp("high"), |
|
|
|
|
TargetLabel: "priority", |
|
|
|
|
Replacement: "p1", |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
ncfg: &config.Config{ |
|
|
|
|
AlertingConfig: config.AlertingConfig{ |
|
|
|
|
AlertmanagerConfigs: []*config.AlertmanagerConfig{ |
|
|
|
|
{ |
|
|
|
|
APIVersion: "v1", |
|
|
|
|
Scheme: "http", |
|
|
|
|
PathPrefix: "/alertmanager", |
|
|
|
|
ServiceDiscoveryConfigs: discovery.Configs{ |
|
|
|
|
discovery.StaticConfig{ |
|
|
|
|
{ |
|
|
|
|
Targets: []model.LabelSet{{"__address__": "alertmanager.default.svc.cluster.local"}}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
AlertRelabelConfigs: []*relabel.Config{ |
|
|
|
|
{ |
|
|
|
|
SourceLabels: model.LabelNames{"severity"}, |
|
|
|
|
Regex: relabel.MustNewRegexp("high"), |
|
|
|
|
TargetLabel: "priority", |
|
|
|
|
Replacement: "p1", |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
GlobalConfig: config.GlobalConfig{ |
|
|
|
|
ExternalLabels: []labels.Label{ |
|
|
|
|
{Name: "region", Value: "us-east-1"}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for _, tt := range tests { |
|
|
|
|
|