Skip to main content
Monitor Blocklight’s health and performance using Prometheus. This is meta-monitoring—it monitors the tool itself, not blockchain threats.
Important Distinction:
  • Blocklight monitors blockchain → sends threat alerts (Slack, Discord, Email)
  • Prometheus monitors Blocklight → checks if the tool is healthy and performing well

Enable Prometheus (Optional)

Optional Feature: Prometheus monitoring is optional. Blocklight works perfectly without it. Enable it only if you need to monitor Blocklight’s health and performance in production.
Prometheus metrics are exposed at /api/v1/system/metrics when the REST API is running. To enable the monitoring stack:
# Deploy with Prometheus meta-monitoring (requires API profile)
docker-compose --profile api --profile observability up -d

# Access Prometheus UI
open http://localhost:9090

# Check metrics endpoint
curl http://localhost:8000/api/v1/system/metrics
Requires REST API: Prometheus metrics are only available when the REST API is enabled (--profile api). The core detection engine works standalone without Prometheus.

Available Metrics

Blocklight exposes basic operational metrics for monitoring system health:
MetricTypeDescription
blocklight_upgaugeBlocklight is running (1 = healthy, 0 = down)
blocklight_rules_totalgaugeTotal number of detection rules loaded
blocklight_rules_enabledgaugeNumber of enabled rules
blocklight_transactions_processed_totalcounterTotal transactions processed
blocklight_findings_generated_totalcounterTotal findings/detections generated
blocklight_avg_evaluation_time_msgaugeAverage rule evaluation time in milliseconds

When to Enable?

  • Production servers - Monitor uptime and basic performance metrics
  • SRE/DevOps - Alert if Blocklight goes down or performance degrades
  • Development - Not needed for local testing
  • Threat detection - Use Blocklight’s alerts instead (this monitors the tool, not threats)
For detailed observability of detections and logs, use Vector + Loki + Grafana (see Pipeline Integration). Prometheus is for monitoring Blocklight itself, not the detections it generates.
See Production Deployment for complete deployment and monitoring setup.