Files
proxmox/scripts/network-monitoring.sh
defiQUG cb47cce074 Complete markdown files cleanup and organization
- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
2026-01-06 01:46:25 -08:00

54 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# Network status and latency monitoring
# Usage: ./network-monitoring.sh
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SOURCE_PROJECT="/home/intlc/projects/smom-dbis-138"
source "$SOURCE_PROJECT/.env" 2>/dev/null || true
RPC_URL="${RPC_URL_138:-http://192.168.11.250:8545}"
# Measure RPC latency
measure_latency() {
local rpc_url="$1"
local start=$(date +%s%N)
cast block-number --rpc-url "$rpc_url" >/dev/null 2>&1
local end=$(date +%s%N)
local latency=$(( (end - start) / 1000000 )) # Convert to milliseconds
echo "$latency"
}
# Check network status
check_network_status() {
echo "=== Network Status ==="
echo ""
# Block number
BLOCK_NUMBER=$(cast block-number --rpc-url "$RPC_URL" 2>/dev/null || echo "N/A")
echo "Current Block: $BLOCK_NUMBER"
# Latency
LATENCY=$(measure_latency "$RPC_URL")
echo "RPC Latency: ${LATENCY}ms"
# Gas price
GAS_PRICE=$(cast gas-price --rpc-url "$RPC_URL" 2>/dev/null || echo "0")
GAS_GWEI=$(echo "scale=2; $GAS_PRICE / 1000000000" | bc 2>/dev/null || echo "0")
echo "Gas Price: $GAS_GWEI gwei"
# Network health
if [ "$LATENCY" -lt 1000 ]; then
echo "Network Status: ✅ Healthy"
elif [ "$LATENCY" -lt 5000 ]; then
echo "Network Status: ⚠️ Degraded"
else
echo "Network Status: ❌ Poor"
fi
}
check_network_status