Add signer liveness check
This commit is contained in:
parent
e914569c8d
commit
2320a6b39b
@ -1,5 +1,6 @@
|
|||||||
from cic_eth.db.models.base import SessionBase
|
from cic_eth.db.models.base import SessionBase
|
||||||
|
|
||||||
|
|
||||||
def health(*args, **kwargs):
|
def health(*args, **kwargs):
|
||||||
session = SessionBase.create_session()
|
session = SessionBase.create_session()
|
||||||
session.execute('SELECT count(*) from alembic_version')
|
session.execute('SELECT count(*) from alembic_version')
|
||||||
|
26
apps/cic-eth/cic_eth/check/signer.py
Normal file
26
apps/cic-eth/cic_eth/check/signer.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
# standard imports
|
||||||
|
import logging
|
||||||
|
from urllib.error import URLError
|
||||||
|
|
||||||
|
# external imports
|
||||||
|
from chainlib.connection import RPCConnection
|
||||||
|
from chainlib.eth.constant import ZERO_ADDRESS
|
||||||
|
from chainlib.eth.sign import sign_message
|
||||||
|
from chainlib.error import JSONRPCException
|
||||||
|
|
||||||
|
logg = logging.getLogger().getChild(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
def health(*args, **kwargs):
|
||||||
|
conn = RPCConnection.connect(kwargs['config'].get('CIC_CHAIN_SPEC'), tag='signer')
|
||||||
|
try:
|
||||||
|
conn.do(sign_message(ZERO_ADDRESS, '0x2a'))
|
||||||
|
except FileNotFoundError:
|
||||||
|
return False
|
||||||
|
except ConnectionError:
|
||||||
|
return False
|
||||||
|
except URLError:
|
||||||
|
return False
|
||||||
|
except JSONRPCException as e:
|
||||||
|
pass
|
||||||
|
return True
|
@ -140,14 +140,15 @@ else:
|
|||||||
|
|
||||||
chain_spec = ChainSpec.from_chain_str(config.get('CIC_CHAIN_SPEC'))
|
chain_spec = ChainSpec.from_chain_str(config.get('CIC_CHAIN_SPEC'))
|
||||||
RPCConnection.register_location(config.get('ETH_PROVIDER'), chain_spec, 'default')
|
RPCConnection.register_location(config.get('ETH_PROVIDER'), chain_spec, 'default')
|
||||||
RPCConnection.register_location(config.get('SIGNER_SOCKET_PATH'), chain_spec, 'signer', constructor=EthUnixSignerConnection)
|
#RPCConnection.register_location(config.get('SIGNER_SOCKET_PATH'), chain_spec, 'signer', constructor=EthUnixSignerConnection)
|
||||||
|
RPCConnection.register_location(config.get('SIGNER_SOCKET_PATH'), chain_spec, 'signer')
|
||||||
|
|
||||||
Otx.tracing = config.true('TASKS_TRACE_QUEUE_STATUS')
|
Otx.tracing = config.true('TASKS_TRACE_QUEUE_STATUS')
|
||||||
|
|
||||||
#import cic_eth.checks.gas
|
#import cic_eth.checks.gas
|
||||||
#if not cic_eth.checks.gas.health(config=config):
|
#if not cic_eth.checks.gas.health(config=config):
|
||||||
# raise RuntimeError()
|
# raise RuntimeError()
|
||||||
liveness.linux.load(health_modules, config=config)
|
liveness.linux.load(health_modules, rundir=config.get('CIC_RUN_DIR'), config=config)
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
argv = ['worker']
|
argv = ['worker']
|
||||||
|
@ -3,4 +3,5 @@ registry_address =
|
|||||||
chain_spec = evm:bloxberg:8996
|
chain_spec = evm:bloxberg:8996
|
||||||
tx_retry_delay =
|
tx_retry_delay =
|
||||||
trust_address =
|
trust_address =
|
||||||
health_modules = cic_eth.check.db,cic_eth.check.gas
|
health_modules = cic_eth.check.db,cic_eth.check.signer,cic_eth.check.gas
|
||||||
|
run_dir = /run
|
||||||
|
@ -3,3 +3,5 @@ registry_address =
|
|||||||
chain_spec = evm:bloxberg:8996
|
chain_spec = evm:bloxberg:8996
|
||||||
trust_address = 0xEb3907eCad74a0013c259D5874AE7f22DcBcC95C
|
trust_address = 0xEb3907eCad74a0013c259D5874AE7f22DcBcC95C
|
||||||
tx_retry_delay = 20
|
tx_retry_delay = 20
|
||||||
|
health_modules = cic_eth.check.db,cic_eth.check.signer,cic_eth.check.gas
|
||||||
|
run_dir = /run
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
cic-base==0.1.2a79+build.d412618d
|
cic-base==0.1.2b1
|
||||||
celery==4.4.7
|
celery==4.4.7
|
||||||
crypto-dev-signer~=0.4.14b2
|
crypto-dev-signer~=0.4.14b3
|
||||||
confini~=0.3.6rc3
|
confini~=0.3.6rc3
|
||||||
cic-eth-registry~=0.5.4a16
|
cic-eth-registry~=0.5.4a16
|
||||||
#cic-bancor~=0.0.6
|
#cic-bancor~=0.0.6
|
||||||
|
Loading…
Reference in New Issue
Block a user