github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/boom/application/applications/database/servicemonitor.go (about) 1 package database 2 3 import ( 4 "github.com/caos/orbos/internal/operator/boom/application/applications/metricspersisting/servicemonitor" 5 deprecatedlabels "github.com/caos/orbos/internal/operator/boom/labels" 6 "github.com/caos/orbos/internal/operator/boom/name" 7 ) 8 9 func GetServicemonitors(instanceName string) []*servicemonitor.Config { 10 return []*servicemonitor.Config{ 11 getDatabaseServiceMonitor(instanceName), 12 getOperatorServiceMonitor(instanceName), 13 } 14 } 15 16 func getDatabaseServiceMonitor(instanceName string) *servicemonitor.Config { 17 var monitorName name.Application = "database-servicemonitor" 18 19 return &servicemonitor.Config{ 20 Name: monitorName.String(), 21 Endpoints: []*servicemonitor.ConfigEndpoint{{ 22 Port: "http", 23 Path: "/_status/vars", 24 TLSConfig: &servicemonitor.ConfigTLSConfig{ 25 InsecureSkipVerify: true, 26 }, 27 Relabelings: []*servicemonitor.ConfigRelabeling{{ 28 Action: "replace", 29 SourceLabels: []string{"__meta_kubernetes_pod_node_name"}, 30 TargetLabel: "instance", 31 }}, 32 }}, 33 34 MonitorMatchingLabels: deprecatedlabels.GetMonitorLabels(instanceName, monitorName), 35 36 ServiceMatchingLabels: getApplicationServiceLabels(), 37 JobName: monitorName.String(), 38 NamespaceSelector: []string{"caos-zitadel"}, 39 } 40 } 41 42 func getOperatorServiceMonitor(instanceName string) *servicemonitor.Config { 43 var monitorName name.Application = "database-operator-servicemonitor" 44 45 return &servicemonitor.Config{ 46 Name: monitorName.String(), 47 Endpoints: []*servicemonitor.ConfigEndpoint{{ 48 Port: "http", 49 }}, 50 MonitorMatchingLabels: deprecatedlabels.GetMonitorLabels(instanceName, monitorName), 51 ServiceMatchingLabels: getOperatorServiceLabels(), 52 JobName: monitorName.String(), 53 NamespaceSelector: []string{"caos-system"}, 54 } 55 }