@@ -17,7 +17,26 @@ const (
1717 prometheusBearerTokenFile = "/var/run/secrets/kubernetes.io/serviceaccount/token"
1818)
1919
20- func newServiceMonitor (namespace , name string , owner metav1.OwnerReference , selector map [string ]string , portName string ) * monitoringv1.ServiceMonitor {
20+ var CollectorMetricRelabelConfigs = []* monitoringv1.RelabelConfig {
21+ {
22+ SourceLabels : []monitoringv1.LabelName {"__name__" },
23+ TargetLabel : "__name__" ,
24+ Regex : "(.*)-(.*)" ,
25+ Replacement : "${1}_${2}" ,
26+ },
27+ {
28+ Action : "keep" ,
29+ SourceLabels : []monitoringv1.LabelName {"__name__" },
30+ Regex : "logcollector_component_event_unmatched_count|vector_buffer_byte_size|vector_buffer_discarded_events_total|vector_buffer_events|vector_buffer_sent_events_total|vector_component_discarded_events_total|vector_component_errors_total|vector_component_received_bytes_total|vector_component_received_event_bytes_total|vector_component_received_events_total|vector_component_sent_bytes_total|vector_events_in_total|vector_http_client_errors_total|vector_http_client_requests_sent_total|vector_http_client_responses_total|vector_open_files" ,
31+ },
32+ {
33+ Action : "drop" ,
34+ SourceLabels : []monitoringv1.LabelName {"component_kind" , "__name__" },
35+ Regex : `transform;(vector_component_received_bytes_total|vector_component_received_event_bytes_total|vector_component_received_events_total|vector_component_sent_bytes_total)` ,
36+ },
37+ }
38+
39+ func newServiceMonitor (namespace , name string , owner metav1.OwnerReference , selector map [string ]string , portName string , metricRelabelConfigs []* monitoringv1.RelabelConfig ) * monitoringv1.ServiceMonitor {
2140 var endpoint = []monitoringv1.Endpoint {
2241 {
2342 Port : portName ,
@@ -30,19 +49,7 @@ func newServiceMonitor(namespace, name string, owner metav1.OwnerReference, sele
3049 ServerName : fmt .Sprintf ("%s.%s.svc" , name , namespace ),
3150 },
3251 },
33- // Replaces labels that have `-` with `_`
34- // Example:
35- // app_kubernetes_io_part-of -> app_kubernetes_io_part_of
36- MetricRelabelConfigs : []* monitoringv1.RelabelConfig {
37- {
38- SourceLabels : []monitoringv1.LabelName {
39- "__name__" ,
40- },
41- TargetLabel : "__name__" ,
42- Regex : "(.*)-(.*)" ,
43- Replacement : "${1}_${2}" ,
44- },
45- },
52+ MetricRelabelConfigs : metricRelabelConfigs ,
4653 },
4754 }
4855
@@ -77,7 +84,7 @@ func BuildSelector(component, instance string) map[string]string {
7784 }
7885}
7986
80- func ReconcileServiceMonitor (k8sClient client.Client , namespace , name string , owner metav1.OwnerReference , selector map [string ]string , portName string ) error {
81- desired := newServiceMonitor (namespace , name , owner , selector , portName )
87+ func ReconcileServiceMonitor (k8sClient client.Client , namespace , name string , owner metav1.OwnerReference , selector map [string ]string , portName string , metricRelabelConfigs [] * monitoringv1. RelabelConfig ) error {
88+ desired := newServiceMonitor (namespace , name , owner , selector , portName , metricRelabelConfigs )
8289 return reconcile .ServiceMonitor (k8sClient , desired )
8390}
0 commit comments