# Prometheus Metrics Lighthouse provides an extensive suite of metrics and monitoring in the [Prometheus](https://prometheus.io/docs/introduction/overview/) export format via a HTTP server built into Lighthouse. These metrics are generally consumed by a Prometheus server and displayed via a Grafana dashboard. These components are available in a docker-compose format at [sigp/lighthouse-metrics](https://github.com/sigp/lighthouse-metrics). ## Beacon Node Metrics By default, these metrics are disabled but can be enabled with the `--metrics` flag. Use the `--metrics-address`, `--metrics-port` and `--metrics-allow-origin` flags to customize the metrics server. ### Example Start a beacon node with the metrics server enabled: ```bash lighthouse bn --metrics ``` Check to ensure that the metrics are available on the default port: ```bash curl localhost:5054/metrics ``` ## Validator Client Metrics By default, these metrics are disabled but can be enabled with the `--metrics` flag. Use the `--metrics-address`, `--metrics-port` and `--metrics-allow-origin` flags to customize the metrics server. ### Example Start a validator client with the metrics server enabled: ```bash lighthouse vc --metrics ``` Check to ensure that the metrics are available on the default port: ```bash curl localhost:5064/metrics ``` ## Remote Monitoring Lighthouse has the ability to send a subset of metrics to a remote server for collection. Presently the main server offering remote monitoring is beaconcha.in. Instructions for setting this up can be found in beaconcha.in's docs: - The Lighthouse flag for setting the monitoring URL is `--monitoring-endpoint`. When sending metrics to a remote server you should be conscious of security: - Only use a monitoring service that you trust: you are sending detailed information about your validators and beacon node to this service which could be used to track you. - Always use an HTTPS URL to prevent the traffic being intercepted in transit. The specification for the monitoring endpoint can be found here: - _Note: the similarly named [Validator Monitor](./validator_monitoring.md) feature is entirely independent of remote metric monitoring_. ### Update Period You can adjust the frequency at which Lighthouse sends metrics to the remote server using the `--monitoring-endpoint-period` flag. It takes an integer value in seconds, defaulting to 60 seconds. ```bash lighthouse bn --monitoring-endpoint-period 60 --monitoring-endpoint "https://url" ``` Increasing the monitoring period between can be useful if you are running into rate limits when posting large amounts of data for multiple nodes.