tessellated-geometry-celo-network-monitor
TypeScript icon, indicating that this package has built-in type declarations

0.0.2 • Public • Published

Celo Network Monitor

pipeline status

Monitor the health of a Celo validator deployment with alerts like:

Example Alert

Usage

First, set the addresses you'd like to monitor in addresses.<network>.yaml and set your node and alerting envars in .env-<network>.

Then, develop this project locally with:

# Setup 
yarn
# Test 
yarn test
# Run locally 
ENV_FILE=.env-template yarn dev

Monitors

Monitors can be enabled or disabled by commenting out desired monitors in src/monitor/monitor.ts. Default monitors include:

  • Balance - Monitor the CELO and cUSD balances of all addresses specified in the addresses yaml file
  • Electability Threshold - Monitor the threshold of votes needed to get elected
  • Governance - Monitor the network for governance activity
  • Key Rotation - When validator keys are rotated, ensure that they are fully rotated
  • Network Participation - Monitor overall network participation numbers
  • Node - Monitor Celo node & network health
  • Pending Votes - Monitor our addresses for pending votes. Remind us to activate them
  • Tobin Tax - Remind us if/when the Tobin Tax is activated. Never send transactions when it is
  • Validator - Monitor the health of our validators

Deployment

The monitor can be containerized and readied for deploy like so. The container will listen on $PORT (default: 8080) and run anytime a request hits it. It's intended for deployment in a container management system with a job set to contact it every ~60 seconds to initiate a new run of the monitor.

docker build -t monitor .
docker run monitor

Readme

Keywords

none

Package Sidebar

Install

npm i tessellated-geometry-celo-network-monitor

Weekly Downloads

0

Version

0.0.2

License

none

Unpacked Size

209 kB

Total Files

135

Last publish

Collaborators

  • tessellated-keefer