gdbからsquidを実行しています。つまり、デバッグ用のバックトレースを自動的に生成することができます。/squid3/gdbcommandsgdbでプログラムを実行していますが、正常な終了を無視していますか?
backtrace=`mktemp`
gdb -q -x /etc/service/squid3/gdbcommands /usr/sbin/squid 2>&1 >$backtrace
/usr/bin/mail -s "`hostname`: Squid was restarted (backtrace)" [email protected] < backtracetrace
rm $backtrace
の/ etc /サービスが含まれています
はset args -NsYC
handle SIGPIPE pass nostop noprint
handle SIGTERM pass nostop noprint
handle SIGUSR1 pass nostop noprint
handle SIGHUP pass nostop noprint
handle SIGSEGV stop
handle SIGABRT stop
run
set print pretty
backtrace full
generate-core-file
quit
しかし、すべての今して、 "ただ" ノークラッシュで、&を再起動停止しているイカがされては全く関与しています。その場合、私はまだ含む電子メールを取得しています。プログラムは、[OK]を終了しましたので、
Reading symbols from /usr/sbin/squid...done.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Inferior 1 (process 57867) exited normally]
/etc/service/squid3/gdbcommands:10: Error in sourced command file:
No stack.
(gdb) quit
そしてもちろんの
は、何のスタックはありません。これを避けるにはどうすればgdbコマンドファイルを変更できますか?