Consensus Client Targets

Customize the default consensus client targets

Consensus Client Targets

Consensus client data is collected by Prometheus from three different sources:

  1. Directly from the client metrics page

  2. Indirectly from the client API via json_exporter

  3. Indirectly from the client API via Ethereum Metrics Exporter

We will review the configuration files for the first two here. Ethereum Metrics Exporter is covered in a later section.

If you would like to monitor more than one instance of the same client, please see the Additional Modifications section for details.

Consensus Client Metrics Configuration

To configure the Prometheus target for client metrics, follow the instructions for your client below.

Edit the Lighthouse configuration file in the /etc/prometheus/files_sd/stakelocal/consensus_metrics directory.

sudo nano /etc/prometheus/files_sd/stakelocal/consensus_metrics/lighthouse.yml

It should look like the following.

    - targets: ['127.0.0.1:5054']
      labels:
        network: 'Mainnet'
        host: 'Default Host'
        service: 'Lighthouse Beacon'
        group: 'Default Group'
        explorer: 'beaconcha.in'

If this instance of Lighthouse is accessible at a different IP address or port, update those in the targets line.

Update the network, host, service, group and explorer labels, as needed. See About Stake Local Labels for label definitions.

Save the file and exit the editor.

An example consensus client metrics target file for the Goerli network could look like the following.

    - targets: ['192.168.0.42:8080']
      labels:
        network: 'Goerli'
        host: 'server12'
        service: 'Prysm Beacon'
        group: 'Goerli Prysm/Geth'
        explorer: 'goerli.beaconcha.in'

Consensus Client API Configuration

To configure the Prometheus target for client APIs, follow the instructions for your client below.

Edit the Lighthouse configuration file in the /etc/prometheus/files_sd/stakelocal/consensus_apis directory.

sudo nano /etc/prometheus/files_sd/stakelocal/consensus_apis/lighthouse.yml

It should look like the following.

    - targets: ['127.0.0.1:5052']
      labels:
        network: 'Mainnet'
        host: 'Default Host'
        service: 'Lighthouse Beacon'
        group: 'Default Group'
        explorer: 'beaconcha.in'

If this instance of Lighthouse is accessible at a different IP address or port, update those in the targets line.

Update the network, host, service, group and explorer labels, as needed. See About Stake Local Labels for label definitions.

Save the file and exit the editor.

An example consensus client API target file for the Mainnet network could look like the following.

    - targets: ['127.0.0.1:5051']
      labels:
        network: 'Mainnet'
        host: 'wopr'
        service: 'Backup Teku'
        group: 'Mainnet Teku/Besu'
        explorer: 'beaconcha.in'

Last updated