mirror of
https://github.com/rootzoll/raspiblitz.git
synced 2025-02-24 22:58:43 +01:00
411 lines
12 KiB
Bash
Executable file
411 lines
12 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# USE THIS SCRIPT FOR BASIC SYSTEM STATUS DEBUG INFO
|
|
|
|
if [ "$1" == "redact" ]; then
|
|
|
|
# get & check parameters
|
|
redactFile=$2
|
|
if [ "${redactFile}" == "" ]; then
|
|
echo "# FAIL: missing second parameter"
|
|
exit 1
|
|
fi
|
|
echo "# redacting file: ${redactFile}"
|
|
if [ $(ls ${redactFile} 2>/dev/null | grep -c "${redactFile}") -lt 1 ]; then
|
|
echo "# FAIL: file does not exist"
|
|
exi 1
|
|
fi
|
|
|
|
# redact nodeIDs
|
|
sed -i 's/[a-z0-9]+@/***@/' ${redactFile}
|
|
|
|
# redact IPv4s
|
|
sed -i 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/*.*.*.*/' ${redactFile}
|
|
|
|
# redact onion adresses
|
|
sed -i 's/[a-z0-9]*.onion/***.onion/' ${redactFile}
|
|
|
|
# redact hostname
|
|
sed -i 's/hostname=[^\r\n]*/hostname=*****/' ${redactFile}
|
|
|
|
# redact balances
|
|
sed -i 's/[0-9]* mSAT/* mSAT/' ${redactFile}
|
|
sed -i 's/[0-9]*.[0-9]* BTC/* BTC/' ${redactFile}
|
|
sed -i 's/[0-9]*.[0-9]* BTC/* BTC/' ${redactFile}
|
|
sed -i 's/balance=[^\r\n]*/balance=****/' ${redactFile}
|
|
sed -i 's/Server started with public key .+/Server started with public key ****/' ${redactFile}
|
|
|
|
# c-lightning self info in logs
|
|
sed -i 's/alias [A-Za-z0-9]* /alias *** /' ${redactFile}
|
|
sed -i 's/public key [a-z0-9]*,/public key *** /' ${redactFile}
|
|
sed -i 's/[a-z0-9][a-z0-9]*.onion/###.onion/' ${redactFile}
|
|
|
|
exit 0
|
|
fi
|
|
|
|
|
|
# load code software version
|
|
source /home/admin/_version.info
|
|
|
|
## get basic info (its OK if not set yet)
|
|
source /home/admin/raspiblitz.info 2>/dev/null
|
|
source <(/home/admin/_cache.sh get state setupPhase)
|
|
source /mnt/hdd/raspiblitz.conf 2>/dev/null
|
|
|
|
# for old nodes
|
|
if [ ${#network} -eq 0 ]; then
|
|
echo "backup info: network"
|
|
network="bitcoin"
|
|
fi
|
|
|
|
# for non final config nodes
|
|
if [ ${#chain} -eq 0 ]; then
|
|
echo "backup info: chain"
|
|
chain="test"
|
|
isMainChain=$(sudo cat /mnt/hdd/${network}/${network}.conf 2>/dev/null | grep "testnet=0" -c)
|
|
if [ ${isMainChain} -gt 0 ];then
|
|
chain="main"
|
|
fi
|
|
fi
|
|
|
|
clear
|
|
echo
|
|
echo "***************************************************************"
|
|
echo "* RASPIBLITZ DEBUG LOGS "
|
|
echo "***************************************************************"
|
|
echo "blitzversion: ${codeVersion}"
|
|
echo "chainnetwork: ${network} / ${chain}"
|
|
uptime
|
|
echo
|
|
|
|
echo "*** SETUPPHASE / BOOTSTRAP ***"
|
|
echo "see logs: cat /home/admin/raspiblitz.log"
|
|
echo "setupPhase--> ${setupPhase}"
|
|
echo "state--> ${state}"
|
|
if [ "${setupPhase}" != "done" ]; then
|
|
sudo tail -n 20 /home/admin/raspiblitz.log
|
|
fi
|
|
echo
|
|
|
|
echo "*** BACKGROUNDSERVICE ***"
|
|
echo "to monitor Background service call: sudo journalctl -f -u background"
|
|
echo
|
|
|
|
echo "*** BLOCKCHAIN (MAINNET) SYSTEMD STATUS ***"
|
|
sudo systemctl status ${network}d -n2 --no-pager
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (MAINNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u ${network}d -b --no-pager -n8"
|
|
sudo journalctl -u ${network}d -b --no-pager -n8
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (MAINNET) 20 INFO LOGS ***"
|
|
echo "sudo tail -n 20 /mnt/hdd/${network}/debug.log"
|
|
sudo tail -n 20 /mnt/hdd/${network}${pathAdd}/debug.log
|
|
echo
|
|
|
|
echo "*** LND (MAINNET) SYSTEMD STATUS ***"
|
|
if [ "${lightning}" == "lnd" ] || [ "${lnd}" == "on" ] || [ "${lnd}" == "1" ]; then
|
|
sudo systemctl status lnd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST LND (MAINNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u lnd -b --no-pager -n12"
|
|
sudo journalctl -u lnd -b --no-pager -n12
|
|
echo
|
|
echo "*** LAST 30 LND (MAINNET) INFO LOGS ***"
|
|
echo "sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/mainnet/lnd.log"
|
|
sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/mainnet/lnd.log
|
|
else
|
|
echo "- OFF by config -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** C-LIGHTNING (MAINNET) SYSTEMD STATUS ***"
|
|
if [ "${lightning}" == "cl" ] || [ "${cl}" == "on" ] || [ "${cl}" == "1" ]; then
|
|
sudo systemctl status lightningd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST 30 C-LIGHTNING (MAINNET) INFO LOGS ***"
|
|
echo "For details also use command --> cllog"
|
|
echo "sudo tail -n 30 /home/bitcoin/.lightning/${network}/cl.log"
|
|
sudo tail -n 30 /home/bitcoin/.lightning/${network}/cl.log
|
|
else
|
|
echo "- not activated -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** BLOCKCHAIN (TESTNET) SYSTEMD STATUS ***"
|
|
if [ "${testnet}" == "on" ] || [ "${testnet}" == "1" ]; then
|
|
sudo systemctl status t${network}d -n2 --no-pager
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (TESTNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u t${network}d -b --no-pager -n8"
|
|
sudo journalctl -u t${network}d -b --no-pager -n8
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (TESTNET) 20 INFO LOGS ***"
|
|
echo "sudo tail -n 20 /mnt/hdd/${network}/tdebug.log"
|
|
sudo tail -n 20 /mnt/hdd/${network}/tdebug.log
|
|
echo
|
|
else
|
|
echo "- OFF by config -"
|
|
fi
|
|
|
|
echo "*** LND (TESTNET) SYSTEMD STATUS ***"
|
|
if [ "${tlnd}" == "on" ] || [ "${tlnd}" == "1" ]; then
|
|
sudo systemctl status tlnd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST LND (TESTNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u tlnd -b --no-pager -n12"
|
|
sudo journalctl -u tlnd -b --no-pager -n12
|
|
echo
|
|
echo "*** LAST 30 LND (TESTNET) INFO LOGS ***"
|
|
echo "sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/testnet/tnd.log"
|
|
sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/testnet/lnd.log
|
|
else
|
|
echo "- OFF by config -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** C-LIGHTNING (TESTNET) SYSTEMD STATUS ***"
|
|
if [ "${tcl}" == "on" ] || [ "${tcl}" == "1" ]; then
|
|
sudo systemctl status tlightningd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST 30 C-LIGHTNING (TESTNET) INFO LOGS ***"
|
|
echo "sudo tail -n 30 /home/bitcoin/.lightning/testnet/cl.log"
|
|
sudo tail -n 30 /home/bitcoin/.lightning/testnet/cl.log
|
|
else
|
|
echo "- not activated -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** BLOCKCHAIN (SIGNET) SYSTEMD STATUS ***"
|
|
if [ "${signet}" == "on" ] || [ "${signet}" == "1" ]; then
|
|
sudo systemctl status s${network}d -n2 --no-pager
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (SIGNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u s${network}d -b --no-pager -n8"
|
|
sudo journalctl -u s${network}d -b --no-pager -n8
|
|
echo
|
|
echo "*** LAST BLOCKCHAIN (SIGNET) 20 INFO LOGS ***"
|
|
echo "sudo tail -n 20 /mnt/hdd/${network}/sdebug.log"
|
|
sudo tail -n 20 /mnt/hdd/${network}/sdebug.log
|
|
echo
|
|
else
|
|
echo "- OFF by config -"
|
|
fi
|
|
|
|
echo "*** LND (SIGNET) SYSTEMD STATUS ***"
|
|
if [ "${slnd}" == "on" ] || [ "${slnd}" == "1" ]; then
|
|
sudo systemctl status slnd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST LND (SIGNET) ERROR LOGS ***"
|
|
echo "sudo journalctl -u slnd -b --no-pager -n12"
|
|
sudo journalctl -u slnd -b --no-pager -n12
|
|
echo
|
|
echo "*** LAST 30 LND (SIGNET) INFO LOGS ***"
|
|
echo "sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/signet/tnd.log"
|
|
sudo tail -n 30 /mnt/hdd/lnd/logs/${network}/signet/lnd.log
|
|
else
|
|
echo "- OFF by config -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** C-LIGHTNING (SIGNET) SYSTEMD STATUS ***"
|
|
if [ "${scl}" == "on" ] || [ "${scl}" == "1" ]; then
|
|
sudo systemctl status slightningd -n2 --no-pager
|
|
echo
|
|
echo "*** LAST 30 C-LIGHTNING (SIGNET) INFO LOGS ***"
|
|
echo "sudo tail -n 30 /home/bitcoin/.lightning/signet/cl.log"
|
|
sudo tail -n 30 /home/bitcoin/.lightning/signet/cl.log
|
|
else
|
|
echo "- not activated -"
|
|
fi
|
|
echo
|
|
|
|
echo "*** NGINX SYSTEMD STATUS ***"
|
|
sudo systemctl status nginx -n2 --no-pager
|
|
echo
|
|
|
|
echo "*** LAST NGINX LOGS ***"
|
|
echo "sudo journalctl -u nginx -b --no-pager -n20"
|
|
sudo journalctl -u nginx -b --no-pager -n20
|
|
echo "--> CHECK CONFIG: sudo nginx -t"
|
|
sudo nginx -t 2>&1
|
|
echo
|
|
|
|
if [ $(sudo systemctl status blitzapi 2>/dev/null | grep -c "blitzapi.service") -lt 1 ]; then
|
|
echo "- BLITZAPI is not running"
|
|
else
|
|
echo "*** BLITZAPI SYSTEMD STATUS ***"
|
|
sudo systemctl status blitzapi -n2 --no-pager
|
|
echo
|
|
|
|
echo "*** LAST BLITZAPI LOGS ***"
|
|
echo "sudo journalctl -u blitzapi -b --no-pager -n20"
|
|
sudo journalctl -u blitzapi -b --no-pager -n20
|
|
echo
|
|
fi
|
|
|
|
if [ "${touchscreen}" == "" ] || [ "${touchscreen}" == "0" ] || [ "${touchscreen}" == "off" ]; then
|
|
echo "- TOUCHSCREEN is OFF by config"
|
|
else
|
|
echo
|
|
echo "*** LAST 20 TOUCHSCREEN LOGS ***"
|
|
echo "sudo tail -n 20 /home/pi/.cache/lxsession/LXDE-pi/run.log"
|
|
sudo tail -n 20 /home/pi/.cache/lxsession/LXDE-pi/run.log
|
|
echo
|
|
fi
|
|
|
|
if [ "${loop}" == "" ] || [ "${loop}" == "off" ]; then
|
|
echo "- Loop is OFF by config"
|
|
else
|
|
echo
|
|
echo "*** LAST 20 LOOP LOGS ***"
|
|
echo "sudo journalctl -u loopd -b --no-pager -n20"
|
|
sudo journalctl -u loopd -b --no-pager -n20
|
|
echo
|
|
fi
|
|
|
|
|
|
if [ "${rtlWebinterface}" == "on" ]; then
|
|
echo
|
|
echo "*** LND-RTL ***"
|
|
sudo systemctl status RTL -n10 --no-pager
|
|
echo
|
|
else
|
|
echo "- LND-RTL is OFF by config"
|
|
fi
|
|
|
|
if [ "${crtlWebinterface}" == "on" ]; then
|
|
echo
|
|
echo "*** CL-RTL ***"
|
|
sudo systemctl status cRTL -n10 --no-pager
|
|
echo
|
|
else
|
|
echo "- CL-RTL is OFF by config"
|
|
fi
|
|
|
|
if [ "${ElectRS}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 ElectRS LOGS ***"
|
|
echo "sudo journalctl -u electrs -b --no-pager -n20"
|
|
sudo journalctl -u electrs -b --no-pager -n20
|
|
echo
|
|
echo "*** ElectRS Status ***"
|
|
sudo /home/admin/config.scripts/bonus.electrs.sh status
|
|
echo
|
|
else
|
|
echo "- Electrum Rust Server is OFF by config"
|
|
fi
|
|
|
|
if [ "${lit}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 LIT LOGS ***"
|
|
echo "sudo journalctl -u litd -b --no-pager -n20"
|
|
sudo journalctl -u litd -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- LIT is OFF by config"
|
|
fi
|
|
|
|
if [ "${BTCPayServer}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 BTCPayServer LOGS ***"
|
|
echo "sudo journalctl -u btcpayserver -b --no-pager -n20"
|
|
sudo journalctl -u btcpayserver -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- BTCPayServer is OFF by config"
|
|
fi
|
|
|
|
if [ "${BTCRPCexplorer}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 BTC-RPC-Explorer LOGS ***"
|
|
echo "sudo journalctl -u btc-rpc-explorer -b --no-pager -n20"
|
|
sudo journalctl -u btc-rpc-explorer -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- BTC-RPC-Explorer is OFF by config"
|
|
fi
|
|
|
|
if [ "${LNBits}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 LNbits LOGS ***"
|
|
echo "sudo journalctl -u lnbits -b --no-pager -n20"
|
|
sudo journalctl -u lnbits -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- LNbits is OFF by config"
|
|
fi
|
|
|
|
if [ "${thunderhub}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 Thunderhub LOGS ***"
|
|
echo "sudo journalctl -u thunderhub -b --no-pager -n20"
|
|
sudo journalctl -u thunderhub -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- Thunderhub is OFF by config"
|
|
fi
|
|
|
|
if [ "${specter}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 SPECTER LOGS ***"
|
|
echo "sudo journalctl -u specter -b --no-pager -n20"
|
|
sudo journalctl -u specter -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- SPECTER is OFF by config"
|
|
fi
|
|
|
|
if [ "${sphinxrelay}" == "on" ]; then
|
|
echo
|
|
echo "*** LAST 20 SPHINX LOGS ***"
|
|
echo "sudo journalctl -u sphinxrelay -b --no-pager -n20"
|
|
sudo journalctl -u sphinxrelay -b --no-pager -n20
|
|
echo
|
|
else
|
|
echo "- SPHINX is OFF by config"
|
|
fi
|
|
|
|
echo
|
|
echo "*** MOUNTED DRIVES ***"
|
|
df -T -h
|
|
echo
|
|
|
|
echo
|
|
echo "*** DATADRIVE ***"
|
|
sudo /home/admin/config.scripts/blitz.datadrive.sh status
|
|
echo
|
|
|
|
echo "*** NETWORK ***"
|
|
sudo /home/admin/config.scripts/internet.sh status | grep 'network_device\|localip\|dhcp'
|
|
echo
|
|
|
|
echo "*** HARDWARE TEST RESULTS ***"
|
|
source <(/home/admin/_cache.sh get system_count_undervoltage)
|
|
showImproveInfo=0
|
|
if [ ${#system_count_undervoltage} -gt 0 ]; then
|
|
echo "UndervoltageReports in Logs: ${system_count_undervoltage}"
|
|
if [ ${system_count_undervoltage} -gt 0 ]; then
|
|
showImproveInfo=1
|
|
fi
|
|
fi
|
|
echo
|
|
|
|
echo "*** SYSTEM CACHE STATUS ***"
|
|
/home/admin/_cache.sh "export" system_
|
|
/home/admin/_cache.sh "export" ln_default | grep -v "ln_default_address"
|
|
/home/admin/_cache.sh "export" btc_default | grep -v "btc_default_address"
|
|
|
|
echo
|
|
echo "*** LOGFILES ***"
|
|
sudo journalctl --disk-usage
|
|
sudo du -sh /var/log
|
|
|
|
echo
|
|
echo "*** OPTION: SHARE THIS DEBUG OUTPUT ***"
|
|
echo "An easy way to share this debug output on GitHub or on a support chat"
|
|
echo "Use the following command and share the resulting link using termbin.com service and tor proxy:"
|
|
echo " debug -l"
|
|
echo "If tor is failing and you don't mind leaking your ip address to the termbin service, use without tor:"
|
|
echo " debug -l -n"
|
|
echo
|