Skip to content

faremeter/402-dashboard

Repository files navigation

Faremeter 402 Dashboard

A collection of Grafana dashboard templates for monitoring x402 payments across multiple merchants in the Faremeter ecosystem. These dashboards provide real-time insights into transaction flows, revenue metrics, and endpoint health for each merchant.

Overview

This repository contains merchant-specific dashboard configurations that are generated from a base template. Each dashboard visualizes:

  • Revenue Metrics: Total earnings, daily breakdowns, and revenue trends
  • Transaction Monitoring: Real-time transaction tracking, signatures, and status
  • Endpoint Health: Live endpoint tracking and health status over time
  • Network Distribution: Transaction patterns across different blockchain networks
  • Merchant Analytics: Unique buyers, total requests, and endpoint usage patterns

Supported Merchants

The following merchants have configured dashboards:

  • DFlow (dflow-dashboard.json)
  • Helius (helius-dashboard.json)
  • Nansen (nansen-dashboard.json)
  • Titan Exchange (titan-exchange-dashboard.json)
  • Triton (triton-dashboard.json)
  • Yatori (yatori-dashboard.json)

Dashboard Generation

Dashboard files are automatically generated using a Makefile-based build system.

Prerequisites

  • make
  • jq

Generating All Dashboards

To generate dashboards for all merchants:

make all

This will create individual dashboard JSON files for each merchant configured in the Makefile.

Generating a Specific Dashboard

To generate a dashboard for a specific merchant:

make <merchant-name>-dashboard.json

For example:

make dflow-dashboard.json

Cleaning Generated Files

To remove all generated dashboard files:

make clean

How It Works

The generation process:

  1. Uses corbits-merchant.json as the base template
  2. Substitutes merchant-specific values throughout the dashboard configuration
  3. Customizes the dashboard title and UID
  4. Removes generic templating variables

Key variables replaced:

  • ${merchant} → Merchant name (e.g., "dflow", "helius")
  • ${merchant_name} → Title-case merchant name (e.g., "Dflow", "Helius")

Dashboard Structure

Each generated dashboard includes:

x402 Datapoints Section

  • Total Earnings (USD): Cumulative USDC revenue
  • Daily Earnings Breakdown: Time series of daily revenue
  • Total Requests: Aggregated transaction count

Faremeter Overview Section

  • Total Unique Buyers: Distinct incoming addresses
  • Total Requests: Transaction volume
  • Transactions Over Time: Daily transaction trends
  • Live Networks: Active blockchain networks gauge
  • Live Endpoints: Active endpoint count gauge

Latest Transactions Table

Shows the 7 most recent transactions with details including:

  • Transaction signature
  • Chain/network
  • Direction (incoming/outgoing)
  • Addresses
  • Amount (with proper decimal handling)
  • Status and timestamp

Merchant Overview Section

  • Endpoint Distribution: Pie chart of revenue by endpoint
  • Most Valuable Endpoints: Top 3 endpoints by revenue
  • API Use Over Time: Daily transaction count trends
  • Network Distribution: Transactions by blockchain network
  • Health Status Over Time: Endpoint uptime percentages

Additional Features

  • x402 News Feed: RSS feed integration for protocol updates
  • Corbits Branding: Powered by Corbits with custom logo
  • Custom Styling: Orange (#e98428) theme throughout

Data Source

All dashboards connect to a PostgreSQL database via the Grafana PostgreSQL datasource (UID: ff126r144g1kwe). The data is sourced from:

  • accounts table: Merchant account information
  • tracked_addresses table: Wallet addresses per account
  • transactions table: Transaction records
  • metrics.endpoint_health table: Endpoint health metrics

Importing to Grafana

  1. Open Grafana in your browser
  2. Navigate to Dashboards → Import
  3. Upload or paste the JSON content from any generated dashboard file
  4. Verify the PostgreSQL datasource is configured (UID: ff126r144g1kwe)
  5. Click "Import"

Maintenance

Adding a New Merchant

  1. Add the merchant name to the MERCHANTS list in Makefile:

    MERCHANTS = dflow \
        helius \
        nansen \
        titan-exchange \
        triton \
        yatori \
        new-merchant
  2. Generate the dashboard:

    make new-merchant-dashboard.json
  3. Test the dashboard by importing it to Grafana

Updating the Template

To modify the base dashboard template:

  1. Edit corbits-merchant.json
  2. Ensure all merchant-specific values use ${merchant} or ${merchant_name} variables
  3. Regenerate all dashboards: make clean && make all

Version

These dashboards are based on CDP v0.1.0 (Corbits Dashboard Platform) and use Grafana schema version 42.

License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for the full text.

Support

For issues or questions, please refer to the Corbits documentation or contact the Faremeter team.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors