#!/usr/bin/env bash # One line per node: blocks, headers, blue score, DAA, tips, peers, difficulty, sink, miner state. Reads the # loopback RPC through ssh (wrpc.py sample), so it costs one ssh round trip per node. . "$(dirname "$0")/lib/common.sh" require_nodes printf '%-10s %-5s %-15s %8s %8s %8s %8s %4s %5s %12s %-12s %s\n' node region ip blocks headers blue daa tips peers difficulty sink miner while IFS=$'\t' read -r name idx reg ip; do ( line=$(nssh "$ip" "python3 /opt/igneum/bin/wrpc.py sample 2>/dev/null; systemctl is-active igneum-miner 2>/dev/null" 2>/dev/null | tr '\n' '\t') s=$(printf '%s' "$line" | cut -f1-9); miner=$(printf '%s' "$line" | cut -f10) IFS=$'\t' read -r ts sink blue daa tips peers diff headers blocks <<< "$s" printf '%-10s %-5s %-15s %8s %8s %8s %8s %4s %5s %12.0f %-12s %s\n' "$name" "$reg" "$ip" "${blocks:-?}" "${headers:-?}" "${blue:-?}" "${daa:-?}" "${tips:-?}" "${peers:-?}" "${diff:-0}" "${sink:0:12}" "${miner:-?}" ) & done < "$NODES_FILE" wait