Documentation Index
Fetch the complete documentation index at: https://docs.arc.io/llms.txt
Use this file to discover all available pages before exploring further.
Arc is currently in its testnet phase. During this period, the network may
experience instability or unplanned downtime. Throughout this page, all
references to Arc refer specifically to the Arc Testnet.
127.0.0.1 only and is reached
over SSH port forwarding from a remote operator workstation.
Prerequisites
- You have a running Arc node that meets the node requirements, set up either from the Run an Arc node tutorial or deployed as a systemd service
- You have installed Docker Engine 24+ with BuildKit and Docker Compose v2 on the node host
- Your node is started with
--metrics 127.0.0.1:9001on the EL and--metrics 127.0.0.1:29000on the CL (the default in Run an Arc node) - You have cloned the
arc-noderepository on the host, to reuse the pre-built Grafana dashboards
Step 1: Verify the metrics endpoints
Confirm both metrics endpoints are reachable on the host before deploying the stack. The Execution Layer serves metrics at the root path, not at/metrics:
--metrics flag before continuing. See
Monitor a node for troubleshooting.
Step 2: Create the monitoring directory
This guide stores all monitoring files under$ARC_HOME/monitoring. Create the
directory layout:
Step 3: Copy the pre-built Arc dashboards
Thearc-node repository ships ready-to-use Grafana dashboards. From the
arc-node repository root, copy them into the monitoring directory:
Step 4: Configure Prometheus
Write the following file to$ARC_MONITORING/prometheus.yml. The EL job scrapes
the root path; the CL job scrapes /metrics:
Step 5: Configure the Grafana datasource
Write the following file to$ARC_MONITORING/grafana-provisioning/datasources/prometheus.yml:
Step 6: Configure dashboard provisioning
Write the following file to$ARC_MONITORING/grafana-provisioning/dashboards/default.yml:
Step 7: Create the Docker Compose file
Write the following file to$ARC_MONITORING/compose.yaml:
The Arc metrics endpoints in this guide bind to
127.0.0.1 only.
network_mode: host is the simplest way for Prometheus to scrape them without
changing the Arc node configuration or exposing metrics publicly.Step 8: Start the stack
Step 9: Access the dashboards
The stack binds Grafana and Prometheus to127.0.0.1 only. They are not exposed
to the public internet.
If you are operating on the same machine, open:
http://127.0.0.1:3000for Grafanahttp://127.0.0.1:9090for Prometheus
http://localhost:3000http://localhost:9090
admin and
password admin. Change them before exposing Grafana through any reverse proxy
or shared access setup.
After Prometheus scrapes both endpoints and Grafana loads the provisioned
dashboards, you see metrics for execution layer activity, consensus layer
activity, block height, validator telemetry, and connected peers. Newly started
Prometheus instances need a short time to collect enough samples; if some panels
are empty immediately after startup, wait a minute and refresh.
Troubleshooting
Browser shows ERR_CONNECTION_REFUSED
If you are connecting to a remote server, confirm you are opening
http://localhost:3000 and http://localhost:9090 on your local machine, not
http://YOUR_SERVER_IP:3000. Also confirm the SSH tunnel is still running.
Prometheus restarts with a permissions error
If Prometheus logs include an error aboutqueries.active or write permission
under /prometheus, fix ownership of the local data directory: