# Decimal Guard
Decimal Guard는 유효성 검사기 노드를 모니터링하고 어떤 이유로든 노드가 블록에 서명하기 위해 중지하는 경우 이를 오프라인으로 설정하는 데 도움이 되는 도구입니다.
# set_offline 트랜잭션 생성
Decimal Guard를 시작하기 전에 블록에 서명하지 않을 때 유효성 검사기를 끄는 데 사용할 validator/set_offline
메시지로 오프라인 트랜잭션을 만들고 서명해야 합니다.
# 생성기 구성
gentx
도구를 구성하려면 cmd/gentx
디렉토리에 .env
파일을 생성해야 합니다. 구성의 예:
API_URL="https://mainnet-gate.decimalchain.com/api"
BASE_COIN_SYMBOL="del"
MNEMONIC="bulb raw claw magnet romance jaguar life cluster solve random laptop salmon pottery subject country aware actual hope wedding hawk amused cage secret network"
# 발전기 사용
gentx
도구를 실행하려면 다음 명령을 사용하십시오.
(cd ./cmd/gentx && go run gentx.go)
터미널에서 모든 것이 정상이면 다음과 같은 출력이 표시됩니다.
Chain ID:
decimal-mainnet-07-28-18-30
Account:
dx16rr3cvdgj8jsywhx8lfteunn9uz0xg2c7ua9nl (number: 2, sequence: 1)
Operator address:
dxvaloper16rr3cvdgj8jsywhx8lfteunn9uz0xg2czw6gx5
Transaction (hex):
ab01282816a90a1a51f5833b0a14d0c71c31a891e5023ae63fd2bcf2732f04f32158120310be031a6a0a26eb5ae987210279f7e074d08a23e2fc7b7fd9e49a0d6570a28bf6c9cb988e92f678c32935097412407979e0cc483f241e48ed3c371d9d668a5b978fb474afc5fea5803c89bd2a2dac3db15eb84fef1fce25e783e279a33bac7b96bbe6786c9608d52c69baecacf9d02218446563696d616c2047756172642074726967676572726564
체인 ID, 계정 및 운영자 주소가 올바른지 확인하십시오. 마지막 줄은 16진수 형식으로 생성된 트랜잭션입니다. Decimal Guard를 실행하려면 SET_OFFLINE_TX
환경 변수(cmd/guard/.env
에 지정)의 값으로 사용해야 합니다.
# 검증자 노드 보호
Decimal Guard를 시작하기 전에 매개변수를 구성해야 합니다.
# Decimal Guard 구성
guard
도구를 구성하려면 cmd/guard
디렉토리에 .env
파일을 만들어야 합니다. 구성의 예:
NODES_ENDPOINTS="tcp://localhost:26657"
MISSED_BLOCKS_LIMIT=8
MISSED_BLOCKS_WINDOW=24
VALIDATOR_ADDRESS="1A42FDF9FC98931A4BB59EF571D61BB70417657D"
SET_OFFLINE_TX="ab01282816a90a1a51f5833b0a14d0c71c31a891e5023ae63fd2bcf2732f04f32158120310be031a6a0a26eb5ae987210279f7e074d08a23e2fc7b7fd9e49a0d6570a28bf6c9cb988e92f678c32935097412407979e0cc483f241e48ed3c371d9d668a5b978fb474afc5fea5803c89bd2a2dac3db15eb84fef1fce25e783e279a33bac7b96bbe6786c9608d52c69baecacf9d02218446563696d616c2047756172642074726967676572726564"
ENABLE_GRACE_PERIOD=true
GRACE_PERIOD_DURATION=15840
어디에:
NODES_ENDPOINTS
- 새 블록을 수신하는 데 사용해야 하는 10진수 노드 RPC 끝점 목록(,
로 구분된 여러 끝점을 지정할 수 있음)MISSED_BLOCKS_LIMIT
및MISSED_BLOCKS_WINDOW
- 마지막MISSED_BLOCKS_WINDOW
블록의 최소MISSED_BLOCKS_LIMIT
블록이 서명하기 위해 누락된 유효성 검사기set_offline
트랜잭션이 연결된 모든 노드에 전송되어 유효성 검사기를 켭니다.VALIDATOR_ADDRESS
- 가드가 모니터링해야 하는 16진수 형식의 유효성 검사기 주소입니다. 유효성 검사기 주소는~/.decimal/daemon/config/priv_validator_key.json
파일에서 찾을 수 있습니다.SET_OFFLINE_TX
- 16진수 형식의 서명된 tx(브로드캐스트 준비). 서명하기에 너무 많은 블록이 누락된 경우 유효성 검사기를 끄는 데 사용됩니다.ENABLE_GRACE_PERIOD
- tx "software_upgrade"를 확인하고 유예 기간 설정 = [update_block ; update_block+GRACE_PERIOD_DURATION]GRACE_PERIOD_DURATION
- 유예 기간(블록 단위). 현재 decimal-go-node의 유예 기간은 15840블록(~24시간)입니다. 가드 값은 노드 15840과 동일하게 설정하는 것이 좋습니다.
# 사용법Decimal Guard
guard
도구를 실행하려면 다음 명령을 사용하십시오.
(cd ./cmd/guard && go run guard.go)