diff options
-rwxr-xr-x | scripts/analyze_dump.sh | 42 | ||||
-rwxr-xr-x | scripts/testzonefile.sh | 23 |
2 files changed, 65 insertions, 0 deletions
diff --git a/scripts/analyze_dump.sh b/scripts/analyze_dump.sh new file mode 100755 index 0000000..1ccb800 --- /dev/null +++ b/scripts/analyze_dump.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +binimg=build/dnsd + +# Today and yesterdays cores +cores=$(find ./dumps/ -name '*.core' -mtime -1) + +for core in $cores +do + gdblogfile="$core-gdb.log" + rm -f "$gdblogfile" + + bininfo=$(ls -l $binimg) + coreinfo=$(ls -l "$core") + + gdb -batch \ + -ex "set logging file $gdblogfile" \ + -ex "set logging on" \ + -ex "set pagination off" \ + -ex "printf \"**\n** Process info for $binimg - $core \n** Generated $(date)\n\"" \ + -ex "printf \"**\n** $bininfo \n** $coreinfo\n**\n\"" \ + -ex "file $binimg" \ + -ex "core-file $core" \ + -ex "bt" \ + -ex "info proc" \ + -ex "printf \"*\n* Libraries \n*\n\"" \ + -ex "info sharedlib" \ + -ex "printf \"*\n* Memory map \n*\n\"" \ + -ex "info target" \ + -ex "printf \"*\n* Registers \n*\n\"" \ + -ex "info registers" \ + -ex "printf \"*\n* Current instructions \n*\n\"" -ex "x/16i \$pc" \ + -ex "printf \"*\n* Threads (full) \n*\n\"" \ + -ex "info threads" \ + -ex "bt" \ + -ex "thread apply all bt full" \ + -ex "printf \"*\n* Threads (basic) \n*\n\"" \ + -ex "info threads" \ + -ex "thread apply all bt" \ + -ex "printf \"*\n* Done \n*\n\"" \ + -ex "quit" +done diff --git a/scripts/testzonefile.sh b/scripts/testzonefile.sh new file mode 100755 index 0000000..3b870dc --- /dev/null +++ b/scripts/testzonefile.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +if [ "$1" = "test" ]; then + for i in $(seq 250); do + echo "$i" + for o in $(seq 10); do + HOST="t$i-$o.example.com." + dig -p 5333 +short "$HOST" @localhost > /dev/null & + done + sleep 1 + done +elif [ "$1" = gen ]; then + for i in $(seq 250); do + for o in $(seq 10); do + HOST="t$i-$o.example.com." + IP="10.10.$i.$o" + + echo "$HOST 3600 IN A $IP" + done + done +else + echo "Usage $0 gen|test" +fi |