> For the complete documentation index, see [llms.txt](https://docs.perfectscale.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.perfectscale.io/product-overview/perfectscale-data-collected.md).

# PerfectScale data collected

Explore what the data PerfectScale collects in order to provide service

In order to provide service, PerfectScale collects the following data:

1. cAdvisor metrics:<br>

   ```
   container_cpu_cfs_periods_total
   container_cpu_cfs_throttled_periods_total
   container_cpu_usage_seconds_total
   container_memory_working_set_bytes
   container_network_receive_bytes_total
   container_network_transmit_bytes_total

   ```
2. kube-state-metrics metrics:<br>

   ```
   kube_pod_labels
   kube_pod_annotations
   kube_pod_info
   kube_pod_container_status_running
   kube_pod_container_status_terminated
   kube_pod_container_status_terminated_reason
   kube_pod_container_status_last_terminated_reason
   kube_pod_container_resource_requests
   kube_pod_container_resource_limits
   kube_pod_container_status_restarts_total
   kube_pod_start_time
   kube_pod_completion_time
   kube_node_info
   kube_node_status_capacity
   kube_node_status_allocatable
   kube_node_status_condition
   kube_node_labels
   kube_pod_status_phase
   kube_job_owner
   kube_replicaset_owner
   kube_horizontalpodautoscaler_info
   kube_horizontalpodautoscaler_labels
   kube_horizontalpodautoscaler_spec_target_metric
   kube_horizontalpodautoscaler_spec_min_replicas
   kube_horizontalpodautoscaler_spec_max_replicas
   kube_horizontalpodautoscaler_status_desired_replicas
   kube_horizontalpodautoscaler_status_current_replicas
   kube_pod_container_info
   kube_namespace_labels
   kube_pod_status_reason
   kube_job_status_failed
   ```
3. Events to use in recommendations and automations related to cluster autoscalers:<br>

   ```
   {Component: "cluster-autoscaler", Reason: "NotTriggerScaleUp"},
   {Component: "default-scheduler", Reason: "FailedScheduling"},
   {Component: "karpenter", Reason: "AwaitingVolumeDetachment"},
   {Component: "karpenter", Reason: "Disrupted"},
   {Component: "karpenter", Reason: "DisruptionBlocked"},
   {Component: "karpenter", Reason: "DisruptionLaunching"},
   {Component: "karpenter", Reason: "DisruptionTerminating"},
   {Component: "karpenter", Reason: "DisruptionWaitingReadiness"},
   {Component: "karpenter", Reason: "Drained"},
   {Component: "karpenter", Reason: "Evicted"},
   {Component: "karpenter", Reason: "FailedDraining"},
   {Component: "karpenter", Reason: "FailedScheduling"},
   {Component: "karpenter", Reason: "InstanceTerminating"},
   {Component: "karpenter", Reason: "Launched"},
   {Component: "karpenter", Reason: "Nominated"},
   {Component: "karpenter", Reason: "SpotInterrupted"},
   {Component: "karpenter", Reason: "SpotRebalanceRecommendation"},
   {Component: "karpenter", Reason: "TerminatingOnInterruption"},
   {Component: "karpenter", Reason: "TerminationGracePeriodExpiring"},
   {Component: "karpenter", Reason: "Unconsolidatable"}
   ```
4. The data about containers’ spec (original) resources (spec CPU\&Memory Requests\&Limits) from `kubeapiserver`.
5. container-jvm metrics collected from coroot-node-agent:<br>

   ```
   container_jvm_heap_used_bytes
   container_jvm_heap_size_bytes
   container_jvm_gc_time_seconds
   container_jvm_info with labels extended with java VM.flags values
   ```
