explaingit

google/cadvisor

📈 Trending19,132GoAudience · ops devopsComplexity · 2/5ActiveLicenseSetup · moderate

TLDR

Real-time container resource monitor that tracks CPU, memory, network, and disk usage for Docker and Kubernetes workloads via web dashboard and API.

Mindmap

mindmap
  root((cAdvisor))
    What it does
      Monitors container resources
      Tracks CPU memory network
      Shows real-time metrics
    How it works
      Reads system information
      Collects usage data
      Displays in web UI
    Use cases
      Diagnose performance issues
      Spot resource hogs
      Feed into monitoring tools
    Tech stack
      Go language
      Docker containers
      Kubernetes integration
    Outputs
      Web dashboard
      REST API
      Historical graphs

Things people build with this

USE CASE 1

Monitor CPU and memory usage of running containers to identify performance bottlenecks and resource-hungry applications.

USE CASE 2

Integrate with Prometheus or other monitoring systems to collect container metrics across a Kubernetes cluster.

USE CASE 3

Diagnose why a container is slow or consuming unexpected resources by viewing real-time usage graphs in the web dashboard.

USE CASE 4

Track historical resource trends to plan capacity and optimize container resource requests and limits.

Tech stack

GoDockerKubernetesPrometheus

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Docker or Kubernetes cluster to monitor; standalone binary may work but needs a running container environment to demonstrate value.

Apache 2.0 license allows free use for any purpose, including commercial, as long as you include a copy of the license and state any significant changes.

In plain English

cAdvisor (short for Container Advisor) is a tool from Google that watches your running containers and tells you exactly how much CPU, memory, network, and disk each one is consuming in real time. If you run applications inside containers, using Docker or a similar system, you need a way to see what those containers are actually doing on the machine. cAdvisor fills that gap by running as a background process alongside your containers, continuously collecting resource usage data and making it available through a web dashboard and a programmable API. It works by reading low-level system information about each container, then organizing that data into historical usage graphs and statistics. You can view the built-in web interface in a browser or connect monitoring tools (like Prometheus) to pull the data automatically. You would use cAdvisor when you are running containers on a server and want to diagnose performance problems, spot a container that is eating too much memory, or feed resource metrics into a larger monitoring setup. It integrates directly with Kubernetes as well, where it can run on every node in a cluster to give cluster-wide visibility. The project is written in Go and can be launched in seconds as a Docker container itself.

Copy-paste prompts

Prompt 1
How do I set up cAdvisor to monitor my Docker containers and view their CPU and memory usage in a web browser?
Prompt 2
Show me how to configure cAdvisor to export metrics to Prometheus so I can track container resource usage over time.
Prompt 3
What are the steps to deploy cAdvisor on every node in my Kubernetes cluster to monitor all pod resource consumption?
Prompt 4
How can I use cAdvisor's REST API to programmatically fetch real-time CPU and memory stats for my containers?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.