--- /dev/null
+#!/bin/bash
+fspid=$(cat /usr/local/freeswitch/log/freeswitch.pid)
+gcore -o /usr/local/freeswitch/log/freeswitch.gcore $fspid && \
+ gdb /usr/local/freeswitch/bin/freeswitch \
+ -c /usr/local/freeswitch/log/freeswitch.gcore.$fspid \
+ --eval-command='set pagination off' \
+ --eval-command='bt' \
+ --eval-command='bt full' \
+ --eval-command='thread apply all bt' \
+ --eval-command='thread apply all bt full' \
+ --eval-command='quit'
+rm /usr/local/freeswitch/log/freeswitch.gcore.$fspid
--- /dev/null
+#!/bin/bash
+email=traces@freeswitch.org
+errorlvl=1
+while [ $errorlvl -gt 0 ]
+do
+ /usr/local/freeswitch/bin/freeswitch -core
+ errorlvl=$?
+ if [ $errorlvl -gt 0 ]; then
+ pid=$(cat /usr/local/freeswitch/log/freeswitch.pid)
+ corefile=core.$pid
+ tempfile=$(tempfile)
+ if [ -f $corefile ]; then
+ reset
+ echo From: freeswitch@jasongarland.com >>$tempfile
+ echo >>$tempfile
+ echo >>$tempfile
+ echo Host: $(hostname -f) >>$tempfile
+ gdb /usr/local/freeswitch/bin/freeswitch -c $corefile \
+ --eval-command='set pagination off' \
+ --eval-command='bt full' \
+ --eval-command='quit' >>$tempfile
+ cat $tempfile|rmail $email
+ rm $tempfile
+ fi
+ fi
+
+ #sleep 5s
+
+done