diff options
author | Jonathan Bauer | 2013-08-15 16:12:43 +0200 |
---|---|---|
committer | Jonathan Bauer | 2013-08-15 16:12:43 +0200 |
commit | 7567411492dc0ffe980dd929a756bc5c6be1d403 (patch) | |
tree | 369022515894575d7c5b74f1310b3d84afddb6ff /remote/modules/debug | |
parent | [pam-freiburg] hacky umounting of home directory upon closing of last session (diff) | |
download | tm-scripts-7567411492dc0ffe980dd929a756bc5c6be1d403.tar.gz tm-scripts-7567411492dc0ffe980dd929a756bc5c6be1d403.tar.xz tm-scripts-7567411492dc0ffe980dd929a756bc5c6be1d403.zip |
[debug] renamed debug-report to debug_report
Diffstat (limited to 'remote/modules/debug')
-rwxr-xr-x | remote/modules/debug/data/opt/openslx/bin/debug_report | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/remote/modules/debug/data/opt/openslx/bin/debug_report b/remote/modules/debug/data/opt/openslx/bin/debug_report new file mode 100755 index 00000000..2c3aabe4 --- /dev/null +++ b/remote/modules/debug/data/opt/openslx/bin/debug_report @@ -0,0 +1,98 @@ +#!/bin/bash + +TOOLS=" + journalctl + systemctl + loginctl + lspci + lsusb + lsmod + mount +" + +URL="http://132.230.8.113/error_report.php" + +if [ "$UID" != "0" ]; then + echo "Debug Reports können nur von root versendet werden" >&2 + exit 1 +fi + +if ! curl -H "Expect:" -f -s -S --connect-timeout 5 "$URL" > /dev/null; then + echo "Kann den Debug-Report-Server in Freiburg nicht erreichen. :-(" >&2 + exit 1 +fi + +rm -rf /tmp/debug-report +mkdir -p /tmp/debug-report/{static,generated} + +if [ ! -d /tmp/debug-report ]; then + echo "FEHLER: Konnte /tmp/debug-report nicht erstellen!" >&2 + exit 1 +fi + +cd /tmp/debug-report + +cat > err-desc <<HEREEND + +# Bitte hier kurz eine passende Fehlerbeschreibung eingeben, anschließend +# Strg+O, ENTER, und Strg+X drücken. +HEREEND + +nano -w err-desc + +echo -n "Beginne mit dem Erstellen des Fehlerberichts..." + +. /opt/openslx/config + +echo "TIME INFORMATION:" > metadata +hwclock >> metadata +date >> metadata +for srv in 132.230.1.9 $SLX_NTP_SERVER 0.de.pool.ntp.org; do + ntpdate -u -q -p 2 -t 1 "$srv" >> metadata && break +done +echo -n "..." + +cp /opt/openslx/config /tmp/udhcpclog static/ 2> /dev/null +echo -n "." + +find /tmp/vmware* -name "*.log" -exec cp {} static/ \; 2> /dev/null +echo -n "." + +cp /var/log/Xorg.0.lo* static/ 2> /dev/null +cp /var/log/{auth.log,kdm.log,syslog,messages,user.log} static/ 2> /dev/null +cp /proc/cpuinfo static/ 2> /dev/null +echo -n "." + +for tool in $TOOLS; do + $tool > "generated/${tool}-out" 2> "generated/${tool}-err" + echo -n "." +done + +ip a > "generated/ip-a-out" 2> "generated/ip-a-err" +echo -n "." + +systemctl status > "generated/systemctl-status-out" 2> "generated/systemctl-status-err" +echo -n "." + +ps aux > "generated/ps-out" 2> "generated/ps-err" +echo -n "." + +echo "..fertig!" + +cd /tmp +rm -f error-report.tar.gz +echo -n "Packe Fehlerbericht ein..." +if ! tar czf error-report.tar.gz debug-report; then + echo "Fehler beim Packen des Berichts!" >&2 + exit 1 +fi +echo "....fertig!" + +echo -n "Lade Fehlerbericht hoch...." +if ! curl -H "Expect:" -f -s -S -F "file=@error-report.tar.gz;filename=report" "$URL" > /dev/null; then + echo "Fehler beim Hochladen des Fehlerberichts :-(" >&2 + exit 1 +fi + +echo "Fehlerbericht erfolgreich versendet!" + |