VictoriaMetrics/lib/promscrape/discovery/kubernetes
Nikolay 91e290a8ff
lib/promscrape: reduce latency for k8s GetLabels (#2454)
replaces internStringMap with sync.Map - it greatly reduces lock contention
concurently reload scrape work for api watcher - each object labels added by dedicated CPU

changes can be tested with following script https://gist.github.com/f41gh7/6f8f8d8719786aff1f18a85c23aebf70
2022-04-20 16:09:40 +03:00
..
api.go lib/promscrape/discovery/kubernetes: return back support role: endpointslices, since it is used by VictoriaMetrics operator 2021-08-29 12:37:03 +03:00
api_watcher.go lib/promscrape: reduce latency for k8s GetLabels (#2454) 2022-04-20 16:09:40 +03:00
api_watcher_test.go lib/promscrape/discovery/kubernetes: rename role: endpointslices to role: endpointslice to be consistent with Prometheus 2021-08-29 11:23:08 +03:00
common_types.go lib/promscrape/discovery/kubernetes: properly track objects with the same names in multiple namespaces 2021-04-02 14:45:32 +03:00
endpoints.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_endpointslice_{label,annotation}* labels to be consistent with other role values for Kubernetes service discovery 2022-02-11 14:54:47 +02:00
endpoints_test.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_endpointslice_{label,annotation}* labels to be consistent with other role values for Kubernetes service discovery 2022-02-11 14:54:47 +02:00
endpointslice.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_endpointslice_{label,annotation}* labels to be consistent with other role values for Kubernetes service discovery 2022-02-11 14:54:47 +02:00
endpointslice_test.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_endpointslice_{label,annotation}* labels to be consistent with other role values for Kubernetes service discovery 2022-02-11 14:54:47 +02:00
ingress.go lib/promscrape/discovery/kubernetes: properly use https scheme for wildcard TLS certificates in ingress target discovery 2021-09-13 13:03:42 +03:00
ingress_test.go lib/promscrape/discovery/kubernetes: properly use https scheme for wildcard TLS certificates in ingress target discovery 2021-09-13 13:03:42 +03:00
kubernetes.go lib/promscrape/discovery/kubernetes: add the ability to limit service discovery to the current namespace 2022-01-13 22:44:35 +02:00
node.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_node_provider_id label for discovered Kubernetes nodes in the same way as Prometheus does 2022-01-13 23:16:02 +02:00
node_test.go lib/promscrape/discovery/kubernetes: add __meta_kubernetes_node_provider_id label for discovered Kubernetes nodes in the same way as Prometheus does 2022-01-13 23:16:02 +02:00
pod.go lib/promscrape/discovery/kubernetes: properly track objects with the same names in multiple namespaces 2021-04-02 14:45:32 +03:00
pod_test.go lib/promscrape/discovery/kubernetes: use a single watcher per apiURL 2021-03-11 16:43:04 +02:00
service.go lib/promscrape/discovery/kubernetes: properly track objects with the same names in multiple namespaces 2021-04-02 14:45:32 +03:00
service_test.go lib/promscrape/discovery/kubernetes: use a single watcher per apiURL 2021-03-11 16:43:04 +02:00