Supported Channels
- Log - Console output (JSON format)
- File - Write to file (JSONL format)
- Webhook - POST JSON to any HTTP endpoint
- Slack - Slack webhook with Block Kit formatting
- Discord - Discord webhook with rich embeds
- Email - SMTP email notifications
- Telegram - Telegram Bot API with MarkdownV2
- Script - Execute custom scripts (Python/JavaScript/Bash)
Configuration
Configure alert channels inconfig.yaml:
Template Variables
Use Go template syntax in notification messages:Available Variables
{{.RuleName}}- Rule name{{.Severity}}- Priority level (NOTICE, WARNING, CRITICAL){{.TxHash}}- Transaction hash{{.BlockNumber}}- Block number{{.Chain}}- Blockchain name{{.Transaction.*}}- Full transaction data{{.Description}}- Rule description{{.Output}}- Alert output message
Severity Filtering
Each channel can filter by minimum severity:- NOTICE - All alerts (lowest threshold)
- WARNING - Warnings and critical alerts
- CRITICAL - Only critical alerts (highest threshold)
Channel-Specific Features
Slack
- Block Kit formatting (automatic)
- Custom templates supported
- Icon emoji configuration
- Username customization
Discord
- Rich embed formatting (automatic)
- Custom templates supported
- Avatar URL configuration
- Username customization
- HTML formatting
- SMTP configuration
- Multiple recipients
- Subject line customization
Telegram
- MarkdownV2 formatting
- Bot API integration
- Chat ID configuration
Script
- Execute custom scripts with finding data as JSON
- Support for Python, JavaScript, Bash, etc.
- Environment variables available