]> git.ipfire.org Git - thirdparty/asterisk.git/commit
debug_utilities: Create the ast_coredumper utility 11/4711/1
authorGeorge Joseph <gjoseph@digium.com>
Wed, 11 Jan 2017 00:10:39 +0000 (17:10 -0700)
committerGeorge Joseph <gjoseph@digium.com>
Wed, 11 Jan 2017 18:10:48 +0000 (11:10 -0700)
commit676865c2fda77700c2fcf8da9f0f45dac9366111
treecead472a13267b09626b603843475793391b921e
parentb08037cd8f2f4a0d612139cd0bfdaee2bc4aaebf
debug_utilities:  Create the ast_coredumper utility

This utility allows easy manipulation of asterisk coredumps.

* Configurable search paths and patterns for existing coredumps
* Can generate a consistent coredump from the running instance
* Can dump the lock_infos table from a coredump
* Dumps backtraces to separate files...
  - thread apply 1 bt full -> <coredump>.thread1.txt
  - thread apply all bt -> <coredump>.brief.txt
  - thread apply all bt full -> <coredump>.full.txt
  - lock_infos table -> <coredump>.locks.txt
* Can tarball corefiles and optionally delete them after processing
* Can tarball results files and optionally delete them after processing
* Converts ':' in coredump and results file names '-' to facilitate
  uploading.  Jira for instance, won't accept file names with colons
  in them.

Tested on Fedora24+, Ubuntu14+, Debian6+, CentOS6+ and FreeBSD9+[1].

[1] For *BSDs, the "devel/gdb" package might have to be installed to
get a recent gdb.  The utility will check all instances of gdb
it finds in $PATH and if one isn't found that can run python, it
prints a friendly error.

Change-Id: I935d37ab9db85ef923f32b05579897f0893d33cd
(cherry picked from commit cb47b4556053cd50d9102eef913671ad0306062d)
configs/samples/ast_debug_tools.conf.sample [new file with mode: 0644]
contrib/Makefile
contrib/scripts/ast_coredumper [new file with mode: 0755]