Amon continuously monitors the Akash Network(a DePIN compute marketplace)'s provider fleet, collecting critical metrics and submitting verifiable measurements to the Checker Network. This subnet is a vital component of the Checker Network ecosystem, ensuring reliable, fairly collected intelligence data from DePINs and Web3 networks.
- Real-time Provider Monitoring - Track health metrics across the entire Akash provider fleet
- Verifiable Measurements - Cryptographically secure data submission to Filecoin settlement layer
- Resource Availability Tracking - Monitor CPU, memory, and storage capacity
- Transparent Provider Performance - Access reliable metrics for informed deployment decisions
| Component | Description |
|---|---|
| 🔍 Provider Discovery | Automatically maintains an up-to-date list of active Akash providers |
| 🔔 Health Verification | Performs comprehensive health checks including latency, uptime, and response validation |
| 📊 Resource Monitor | Tracks provider resource metrics (CPU, memory, storage) and capacity |
| 🔐 Measurement Engine | Generates and submits cryptographically verifiable measurements |
- 🔄 Provider list is periodically refreshed from the Akash Network
- 🔍 Health checks and resource monitoring are performed on each provider
- ✅ Measurements are validated and formatted according to subnet specifications
- 📤 Verified measurements are submitted to the Checker Network
- Provider Health Metrics: Response time, availability, resource capacity
- Resource Monitoring: CPU utilization, memory usage, storage availability
- Measurement Frequency: Configurable intervals for health checks and updates
- Auto-scaling: Dynamic provider list management with configurable thresholds
Environment variables for subnet customization:
| Variable | Description | Default |
|---|---|---|
AKASH_API_URL |
Akash Network API endpoint | https://console-api.akash.network |
CHECKER_API_URL |
Checker Network API endpoint | https://api.checker.network |
MEASUREMENT_DELAY |
Inter-measurement delay in ms | 60000 |
UPDATE_NODES_DELAY |
Provider list refresh interval in ms | 300000 |
MIN_PROVIDERS_REQUIRED |
Minimum provider count threshold | 3 |
├── main.js # Entry point and measurement loop
└── lib/
├── akash-client # Better provider management with checks
├── nodes.js # Provider discovery and management
├── measure.js # Health and resource measurements
├── submit-measurement.js # Measurement submission
├── constants.js # Configuration constants
├── http-assertions.js # Response validation
└── random.js # Utility functions for randomized picking
# Create the database
docker exec -it spark-db psql -U $env:UserName -c "CREATE DATABASE simple_subnet_api"
# Create the measurements table
docker exec -it spark-db psql -U $env:UserName -d simple_subnet_api -c "CREATE TABLE daily_measurements ( subnet VARCHAR(50) NOT NULL, day DATE NOT NULL, total BIGINT DEFAULT 0, successful BIGINT DEFAULT 0, PRIMARY KEY (subnet, day) );"
# Verify table creation
docker exec -it spark-db psql -U $env:UserName -d simple_subnet_api -c "\dt"
# Check table contents
docker exec -it spark-db psql -U $env:UserName -d simple_subnet_api -c "SELECT * FROM daily_measurements;"# Set up the simple subnet API
cd simple-subnet-api
npm i
node bin/migrate.js
node bin./simple-subnet-api.js
# Run the Amon checker subnet
cd amon
zinnia run main.js



