Prometheus Target Debug

Use this runbook when Grafana shows no data or Prometheus reports scrape failures or targets in a DOWN state.

Common symptom

Dashboards are empty, metrics are stale, or the Prometheus targets page shows that the application endpoint is unreachable.

Step 1 — Check the metrics endpoint

curl http://localhost:3002/metrics

If this fails, the Node.js service may not be running or may not be exporting metrics.

Step 2 — Inspect Prometheus targets

http://localhost:9090/targets

Look for the configured application target and confirm its state is UP.

Step 3 — Validate scrape configuration

Typical Prometheus job example:

scrape_configs:
  - job_name: "auth-service"
    metrics_path: /metrics
    static_configs:
      - targets: ["auth-service:3002"]

Step 4 — Verify Docker networking

docker ps
docker network ls
docker inspect prometheus

Confirm that Prometheus and the application service are on the same Docker network and that the container name in the scrape target is correct.

Step 5 — Restart the stack if needed

docker compose restart
docker compose ps

Success criteria

  • /metrics responds
  • Target state in Prometheus is UP
  • Metrics begin appearing in Grafana queries

Related runbooks