diff -r d024bf1f4eab -r f827f3c50dcf extras/crash_test.conf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/extras/crash_test.conf Sun Feb 21 22:32:27 2016 +0100 @@ -0,0 +1,71 @@ +{ + Processor => { + JobQueue => { + Backend => { + Minion => { Pg => "postgresql:///crashtest" }, + }, + }, + CrashProcessor => { + Breakpad => { + JSONStackwalker => 'stackwalker', + SymbolsPath => 'data/breakpad-symbols/*', + }, + }, + CrashSignatureExtractor => { + C_Cpp => { + GroupMaxDistance => 0.1, + TopIrrelevant => [ + # Ignore these frames at the top of the stack when creating a crash signature (mostly exception handler and libc internal functions) + "__cxxabiv1::__terminate", + "__gnu_cxx::__verbose_terminate_handler", + "std::terminate", + "raise", + "abort", + ], + TopFrame => [ + # Consider these frames as the first (from top) relevant frame of the crash + # Order is important here, the first match will be selected + qr/std::__throw_[a-z]+_error/, + "__cxxabiv1::__cxa_throw", + ], + BottomIrrelevant => [ + # Ignore these frames at the bottom of the stack (libc internal functions) + "__libc_start_main", + "_init", + ], + BottomFrame => [ + # Don't use frames past this one in the signature + #"main", + ], + RemoveNamespace => [ + # Clean function names by removing the namespace + #"some_ns::", + ], + }, + }, + }, + Storage => [ + { Type => "Sql", db => { Pg => "postgresql:///crashtest" } }, + { Type => "File", DataDir => 'data/crashs/' }, + ], + WebInterface => { + ScmLinks => { + "svn:svn.example.org/testproject" => 'https://redmine.example.org/projects/testproject/repository/entry/<%= $scmpath =%>?rev=<%= $rev =%>#L<%= $line =%>', + }, + ExtraColumns => { + Index => [ + { id => 'os' , db_column => "crash_user.os", name => 'Operating System' }, + { id => 'cpu_count' , db_column => "crash_user.cpu_count", name => "CPU count" }, + { id => 'program' , db_column => "main_module", name => 'Program' }, + ], + GroupIndex => [ + { id => 'program' , db_column => "string_agg(distinct(main_module), ', ')", name => 'Programs' }, + ], + Search => [ + { id => 'cpu_count' , db_column => "crash_user.cpu_count", name => "CPU count" }, + { id => 'program' , db_column => "main_module", name => 'Program' }, + ], + }, + }, +}; +# vim:ft=perl: