LogoLogo
v1.x (Deprecated)
v1.x (Deprecated)
  • What is Boost?
  • Features
  • Architecture
    • Repository
    • Database
    • DAG store
    • libp2p Protocols
  • Hardware requirements
  • Getting started
    • As a storage provider
    • As a client
  • Migrate from Lotus to Boost
    • Migrate a monolith lotus-miner to Boost
    • Migrate a Lotus markets service process to Boost
    • Roll back to Lotus markets service process
  • Configuration
    • UI Settings
    • HTTP Transfer limit
    • Deal Filters
    • Remote CommP
    • Legacy Deal configuration
    • HTTP indexer announcement
  • Backup and Restore
  • Tutorials
    • How to store files with Boost on Filecoin
    • Using filters for storage and retrieval deals
    • Setting up a monitoring stack for Boost
  • Bitswap Retrieval
  • HTTP Retrieval
    • Serving files with booster-http
  • Troubleshooting
  • Experimental Features
    • FVM Contract Deals
    • Local Index Directory
      • Architecture
      • Requirements
      • Initialisation
  • GraphQL API
  • JSON-RPC API
  • FAQ
  • Need help?
Powered by GitBook
On this page
  • Background
  • Prerequisites
  • Steps
Edit on GitHub
Export as PDF
  1. Tutorials

Setting up a monitoring stack for Boost

This tutorial goes through the steps required to run our Docker monitoring setup to collect and visualize metrics for various Boost processes

PreviousUsing filters for storage and retrieval dealsNextBitswap Retrieval

Last updated 2 years ago

Background

The monitoring stack we will use includes:

  • Prometheus - collects metrics and powers dashboards in Grafana

  • Tempo - collects traces and powers traces search in Grafana with Jaeger

  • Grafana - provides visualization tools and dashboards for all metrics and traces

Lotus and Boost are already instrumented to produce traces and stats for Prometheus to collect.

The Boost team also packages a set of Grafana dashboards that are automatically provisioned as part of this setup.

Prerequisites

This setup has been tested on macOS and on Linux. We haven’t tested it on Windows, so YMMV.

All the monitoring stack containers run in Docker.

Steps

  1. Install Docker

We have tested this setup with Docker 20.10.23 on macOS and Ubuntu.

  1. DNS resolution for Prometheus

Depending on where your Filecoin processes (boostd, lotus, lotus-miner, booster-bitswap, etc.) are running, you need to confirm that they are reachable from Prometheus so that it can scrape their metrics.

By default the setup expects to find them within the same Docker network, so if you are running them elsewhere (i.e. on the `host` network), add the following arguments:

  1. Prometheus targets

If you are running software firewall like `ufw`, you might need to modify your iptables and allow access from the Prometheus container / network to the Filecoin stack network, for example:

sudo docker network inspect monitoring # note the Subnet for the network sudo ufw allow from 172.18.0.0/16

  1. Grafana dashboards

Update extra_hosts in docker-compose.yaml for prometheus, so that the Prometheus container can reach all its targets - boostd, lotus-miner, booster-bitswap, booster-http, etc.

Confirm that Prometheus targets are scraped at / Targets

Go to Grafana at and inspect the dashboards:

https://docs.docker.com/engine/install/
https://github.com/filecoin-project/boost/blob/main/docker/monitoring/docker-compose.yaml#L47-L55
http://localhost:9090
http://localhost:3333