This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Tools to classify / uniquify core dumps or stack traces?
- From: Phil Muldoon <pmuldoon at redhat dot com>
- To: psmith at gnu dot org
- Cc: Jan Kratochvil <jan dot kratochvil at redhat dot com>, gdb at sourceware dot org
- Date: Fri, 02 Aug 2013 09:59:06 +0100
- Subject: Re: Tools to classify / uniquify core dumps or stack traces?
- References: <1375385181 dot 3028 dot 5 dot camel at homebase> <20130801193547 dot GA12116 at host2 dot jankratochvil dot net> <1375406012 dot 3028 dot 38 dot camel at homebase>
On 02/08/13 02:13, Paul Smith wrote:
> On Thu, 2013-08-01 at 21:35 +0200, Jan Kratochvil wrote:
>> On Thu, 01 Aug 2013 21:26:21 +0200, Paul Smith wrote:
>>> Hi all. I've got an environment where I'm getting lots of core dumps
>>> from various places and it's very tedious to go through them and
>>> determine which ones are for unique problems, and which are essentially
>>> duplicates (same bug causing the core dump).
>>>
>>> I was thinking of throwing together some kind of Perl or Python script
>>> that could compare and categorize stack traces, but I thought surely
>>> someone must have done something like this before.
>>>
>>> Anyone have any pointers or thoughts about something like this?
>>
>> ABRT, it has several backends how to report the results (the typical one is
>> Bugzilla), it also supports heuristic duplicates detection etc.
>> It is shipped in all recent Fedora releases by default and it is also
>> a project deployable on any OS:
>> https://fedorahosted.org/abrt/
>>
>> There is also Apport (I do not have experience with it).
>
> It looks like btparser is close to what I need. It's an unusual choice,
> IMHO, to use C to implement something which so fundamentally depends on
> text manipulation; I would have chosen Perl or Python myself. But I'll
> definitely take a look.
Why not use the Python API in GDB to automate your task?
http://sourceware.org/gdb/current/onlinedocs/gdb/Python.html#Python
If there are things missing in the API regarding what you need for
your task, I will be happy to add them.
Cheers,
Phil