Aller au contenu

Métriques

Les métriques collectées se comptent par milliers. Au lieu de dresser une liste complète des métriques, cette documentation se concentrera sur les principaux exporteurs et leurs métriques les plus importantes.

Pour obtenir une liste exhaustive des métriques collectées, vous pouvez vous connecter aux exporteurs avec

kubectl -n <namespace> port-forward <exporter pod name> <port>:<port>
Puis vous connecter à

http://localhost:<port>/metrics
avec curl or via le navigateur web de votre choix.

Vous trouverez ci-dessous une liste des principaux exporteurs et de certaines des principales métriques qu'ils exposent. Lorsque vous connaissez le préfixe d'une métrique, vous pouvez utiliser Grafana (onglet Explore), taper le préfixe et laisser l'auto-complétion vous suggérer toutes les métriques possibles.

kubelet et cadvisor

L'exporteur est intégré dans le Kubelet. Il n'y a pas de documentation sur les métriques exposées.

Les métriques commencent par container_ ou kubelet_.

  • container_cpu_*
  • container_fs_*
  • container_memory_*
  • container_network_*
  • kubelet_certificate_manager_*
  • kubelet_cgroup_manager_*
  • kubelet_containers_*
  • kubelet_docker_operations_*
  • kubelet_http_*
  • kubelet_network_*
  • kubelet_node_config_error
  • kubelet_node_name
  • kubelet_pleg_relist_*
  • kubelet_pod_*
  • kubelet_running_container_count
  • kubelet_running_pod_count
  • kubelet_runtime_operations_*
  • kubelet_volume_stats_*

Note

Il existe d'autres métriques container_* et kubelet_*. Explorez !

Kube-state-metrics

Les métriques de Kube-state-metrics sont décrites dans ce répertoire.

Les Kube-state-metrics exposent des métriques relatives aux objets Kubernetes :

  • kube_configmap_*
  • kube_daemonset_*
  • kube_deployment_*
  • kube_endpoint_*
  • kube_ingress_*
  • kube_namespace_*
  • kube_node_*
  • kube_persistentvolume_*
  • kube_persistentvolumeclaim_*
  • kube_pod_container_*
  • kube_pod_*
  • kube_replicaset_*
  • kube_secret_*
  • kube_service_*
  • kube_statefulset_*
  • kube_storageclass_*

Node Exporter

Les métriques de Node-exporter sont décrites comme une liste de collecteurs.

Node-exporter récupère les métriques du système d'exploitation de la machine qui exécute le kubelet.

Les métriques sont préfixées de node_*.

  • node_cpu_*
  • node_disk_*
  • node_filefd_*
  • node_filesystem_*
  • node_load1
  • node_load15
  • node_load5
  • node_memory_*
  • node_netstat_*
  • node_network_*
  • node_network_up
  • node_uname_info
  • node_vmstat_*

Note

Il existe d'autres métriques node_*. Explorez !

Blackbox Exporter

Les métriques de Blackbox Exporter ne sont décrites dans aucune documentation officielle. Leur définition se trouve dans le code source.

les métriques Blackbox Exporter sont préfixées de probe_*.

  • probe_dns_lookup_time_seconds
  • probe_duration_seconds
  • probe_failed_due_to_regex
  • probe_http_content_length
  • probe_http_duration_seconds
  • probe_http_redirects
  • probe_http_ssl
  • probe_http_status_code
  • probe_http_uncompressed_body_length
  • probe_http_version
  • probe_ip_addr_hash
  • probe_ip_protocol
  • prober_probe_total
  • probe_ssl_earliest_cert_expiry
  • probe_ssl_last_chain_expiry_timestamp_seconds
  • probe_success
  • probe_tls_version_info

Prometheus metrics

Prometheus explique certaines de ses métriques internes ici

La métrique la plus importante est up. Sa syntaxe est la suivante

up{job="<job-name>", instance="<instance-id>"}
Elle retourne 1 si la cible prometheus est présente.

Cette mesure peut être utilisée pour voir si une cible (un exporteur) peut être scrappée.

S3 metrics

S3 sur Flexible Engine

Les métriques S3 sur Flexible Engine proviennent d'un exporteur développé en interne par l'équipe Caascad. Voici la liste exhaustive des métriques exportées :

  • s3_bucket_size : taille des buckets S3 dont Caascad a besoin. Le nom du bucket est donné par le label Prometheus `s3_bucket_name.
  • s3_bucket_object_number : nombre d'objets dans les buckets S3 dont Caascad a besoin. Le nom du bucket est donné par le label Prometheus `s3_bucket_name.

S3 sur AWS

Nous ne collectons pas ces métriques pour le moment. Cela va évoluer prochainement.

La plupart des exporteurs codés en GO

La plupart des exporteurs codés avec le langage GO exportent également quelques métriques internes sur leur fonctionnement.

  • go_gc_* : metriques sur le Garbage Collector
  • go_goroutines : metriques sur les goroutines
  • go_info : metriques avec des labels sur le compilateur GO qui a compilé l'exporteur
  • go_memstats_*: métriques sur la mémoire de l'exporteur
  • go_threads : metriques sur les threads.