tornado-relayer/src/healthWatcher.js

22 lines
766 B
JavaScript
Raw Permalink Normal View History

2022-04-06 08:55:49 +02:00
const { setSafeInterval, toBN, fromWei, RelayerError } = require('./utils')
const { privateKey, minimumBalance } = require('./config')
const { redis } = require('./modules/redis')
const web3 = require('./modules/web3')()
2021-02-09 16:53:28 +01:00
async function main() {
try {
const { address } = web3.eth.accounts.privateKeyToAccount(privateKey)
const balance = await web3.eth.getBalance(address)
if (toBN(balance).lt(toBN(minimumBalance))) {
2022-04-06 08:55:49 +02:00
throw new RelayerError(`Not enough balance, less than ${fromWei(minimumBalance)} ETH`, 1)
2021-02-09 16:53:28 +01:00
}
await redis.hset('health', { status: true, error: '' })
} catch (e) {
console.error('healthWatcher', e.message)
await redis.hset('health', { status: false, error: e.message })
}
}
setSafeInterval(main, 30 * 1000)