github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/boom/application/applications/apigateway/metrics/servicemonitor.go (about) 1 package metrics 2 3 import ( 4 "github.com/caos/orbos/internal/operator/boom/application/applications/apigateway/info" 5 "github.com/caos/orbos/internal/operator/boom/application/applications/metricspersisting/servicemonitor" 6 "github.com/caos/orbos/internal/operator/boom/labels" 7 ) 8 9 func GetServicemonitor(instanceName string) *servicemonitor.Config { 10 appName := info.GetName() 11 monitorlabels := labels.GetMonitorLabels(instanceName, appName) 12 ls := labels.GetApplicationLabels(appName) 13 14 endpoint := &servicemonitor.ConfigEndpoint{ 15 Port: "ambassador-admin", 16 Path: "/metrics", 17 } 18 19 ls["service"] = "ambassador-admin" 20 ls["app.kubernetes.io/part-of"] = "ambassador" 21 ls["app.kubernetes.io/name"] = "ambassador" 22 ls["app.kubernetes.io/instance"] = "ambassador" 23 24 return &servicemonitor.Config{ 25 Name: "ambassador-servicemonitor", 26 Endpoints: []*servicemonitor.ConfigEndpoint{endpoint}, 27 MonitorMatchingLabels: monitorlabels, 28 ServiceMatchingLabels: ls, 29 JobName: "ambassador", 30 } 31 }