cAdvisor
cAdvisor (Container Advisor) is a container monitoring tool developed by Google that collects, aggregates, processes, and exports information about running containers. To send your Prometheus cAdvisor metrics to a Logz.io Infrastructure Monitoring account, use remote write to connect to Logz.io as the endpoint.
Before you begin
These are the prerequisites you’ll need before you can begin:
- Docker and Docker Compose installed on your machine.
- Logz.io account
Create a Prometheus configuration file
Navigate to your application directory or create a new one. In this directory, create a prometheus.yml
file with the following content:
global:
scrape_interval: 15s
external_labels:
monitor: 'docker-monitor'
scrape_configs:
- job_name: 'cadvisor'
static_configs:
- targets: ['cadvisor:8080']
remote_write:
- url: "https://<<LISTENER-HOST>>:8053"
bearer_token: "<<PROMETHEUS-METRICS-SHIPPING-TOKEN>>"
remote_timeout: 30s
queue_config:
batch_send_deadline: 5s
max_shards: 10
min_shards: 1
max_samples_per_send: 500
capacity: 10000
Replace the placeholders to match your specifics. (They are indicated by the double angle brackets << >>
):
- Replace
<<LISTENER-HOST>>
with the Logz.io Listener URL for your region, configured to use port 8052 for http traffic, or port 8053 for https traffic. - Replace
<<PROMETHEUS-METRICS-SHIPPING-TOKEN>>
with a token for the Metrics account you want to ship to. Look up your Metrics token.
Create a Docker Compose file
In the same directory, create a docker-compose.yml
file with the following content:
version: '3.7'
services:
prometheus:
image: prom/prometheus:latest
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
ports:
- 9090:9090
cadvisor:
image: gcr.io/cadvisor/cadvisor:latest
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
ports:
- 8080:8080
Run the setup
From your application directory, run:
docker-compose up -d
Verify the setup
To verify that your metrics are being sent correctly:
- Open your browser and go to http://localhost:9090 to access the Prometheus UI.
- In the Prometheus UI, run a query for p
rometheus_remote_storage_samples_in_total
. You should see metrics if everything is set up correctly.
Check Logz.io for your metrics
Give your data some time to get from your system to ours, then log in to your Logz.io Metrics account, and open the Logz.io Metrics tab.