| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Example:
post-create
analyze
reanalyze
report
report_Bugzilla
report_Logger
post-create
reanalyze
report_Bugzilla
report_Logger
Note that "analyze" and "report" steps arent't listed for TEST_DIR
because there is not a single matching rule for them.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
There are a few things which are missing in this commit:
for example, the list of possible reporting "paths" is not extracted
from abrt_event.conf yet. Part 2 will deal with it.
Tested: reporting thru bugzilla and thru logger.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
| |
abrt_action.conf provides a way to configure that behaviour.
This change adds a commented-out example how to do it
for kerneloops.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
specified event
Some reworking of run_action() API was needed
to make it possible to put it into libABRT.
abrt-handle-crashdump has no -l option yet:
$ abrt-handle-crashdump
Usage: abrt-handle-crashdump [-vs] -d DIR -e EVENT
Handle crash dump according to rules in abrt_action.conf
-v, --verbose be verbose
-s Log to syslog
-d DIR Crash dump directory
-e EVENT Event
Can (will) extend it later.
Run-tested: performed "analyze" step by hand with
abrt-handle-crashdump -e analyze -d CRASH_DUMP_DIR
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch replaces only the post-create step with new logic
(the step which happens when abrtd detects fresh crash dump dir
and needs to decide what to do with it), but it turns out
this step is one of hard ones: it needs special handling
of UUID. So a good chunk of hard-ish stuff is already in this patch.
It also contains logic to collect the log from actions,
even though so far it is simply logged. Other steps
(like reporting step) will pipe it to clients.
post-create step simply has no client to pipe output to.
But the code is there already.
GetLocalUUID() members in all plugins are unused now
and are deleted from all classes.
Next patches will move run_event() function into libABRT,
so that it can be used from e.g. abrt-handle-crashdump utility
if/when we will write it, from clients directly and so on.
For now, it lives in MiddleWare.cpp since it is only used there.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Was:
linux-vdso.so.1 => (0x00007fff4e4a0000)
libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 (0x00007f64316c0000)
libABRTdUtils.so.0 => /usr/lib64/libABRTdUtils.so.0 (0x00007f64314b6000)
libpolkit-gobject-1.so.0 => /usr/lib64/libpolkit-gobject-1.so.0 (0x0000003c2c600000)
libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x0000003c20a00000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x0000003c1f600000)
libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x0000003c20600000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x0000003c1fa00000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003c1f200000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x0000003c28200000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f64312b2000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x0000003c1fe00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6431096000)
librt.so.1 => /lib64/librt.so.1 (0x00007f6430e8e000)
libxmlrpc.so.3 => /usr/lib64/libxmlrpc.so.3 (0x0000003c22e00000)
libxmlrpc_util.so.3 => /usr/lib64/libxmlrpc_util.so.3 (0x0000003c23600000)
libxmlrpc_client.so.3 => /usr/lib64/libxmlrpc_client.so.3 (0x0000003c23a00000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003c2c200000)
libm.so.6 => /lib64/libm.so.6 (0x00007f6430c0a000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003c28e00000)
libc.so.6 => /lib64/libc.so.6 (0x00007f643088b000)
libeggdbus-1.so.0 => /usr/lib64/libeggdbus-1.so.0 (0x0000003c30200000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f6430671000)
libz.so.1 => /lib64/libz.so.1 (0x0000003c1e600000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f6430452000)
/lib64/ld-linux-x86-64.so.2 (0x00007f64318d0000)
libcurl.so.4 => /usr/lib64/libcurl.so.4 (0x00007f64301f6000)
libdbus-glib-1.so.2 => /usr/lib64/libdbus-glib-1.so.2 (0x00007f642ffd3000)
libidn.so.11 => /lib64/libidn.so.11 (0x0000003c21200000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f642fdc5000)
libldap-2.4.so.2 => /usr/lib64/libldap-2.4.so.2 (0x00007f642fb80000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f642f951000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f642f694000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f642f468000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x0000003c29200000)
libssl3.so => /usr/lib64/libssl3.so (0x00007f642f234000)
libsmime3.so => /usr/lib64/libsmime3.so (0x00007f642f009000)
libnss3.so => /usr/lib64/libnss3.so (0x00007f642eccf000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007f642eab0000)
libplds4.so => /lib64/libplds4.so (0x00007f642e8ad000)
libplc4.so => /lib64/libplc4.so (0x00007f642e6a9000)
libnspr4.so => /lib64/libnspr4.so (0x00007f642e46c000)
libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x0000003c21600000)
libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x0000003c34e00000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x0000003c2d600000)
libcrypto.so.10 => /lib64/libcrypto.so.10 (0x0000003c29a00000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f642e263000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x0000003c2aa00000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f642e02c000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f642ddcf000)
Now:
linux-vdso.so.1 => (0x00007fff187ff000)
libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 (0x00007fb12b24e000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x0000003c1fe00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb12b032000)
libABRTdUtils.so.0 => /usr/lib64/libABRTdUtils.so.0 (0x00007fb12ae2b000)
libpolkit-gobject-1.so.0 => /usr/lib64/libpolkit-gobject-1.so.0 (0x0000003c2c600000)
libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x0000003c20a00000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x0000003c1f600000)
libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x0000003c20600000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x0000003c1fa00000)
librt.so.1 => /lib64/librt.so.1 (0x00007fb12ac23000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003c1f200000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fb12aa1f000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003c2c200000)
libm.so.6 => /lib64/libm.so.6 (0x00007fb12a79b000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003c28e00000)
libc.so.6 => /lib64/libc.so.6 (0x00007fb12a41c000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb12b45e000)
libeggdbus-1.so.0 => /usr/lib64/libeggdbus-1.so.0 (0x0000003c30200000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fb12a202000)
libz.so.1 => /lib64/libz.so.1 (0x0000003c1e600000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fb129fe3000)
libdbus-glib-1.so.2 => /usr/lib64/libdbus-glib-1.so.2 (0x00007fb129dc0000)
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This fixes problems of having long lines truncated - and we do have very long lines
sometimes - curl errors with HTML, list of debuginfos etc.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Also adjusts abrt-action-print to return better error message:
'/tmp' is not a crash dump directory
1
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usage: abrt-action-print [v] -d DIR
Print information about the crash to standard output
-v, --verbose be verbose
-d DIR Crash dump directory
As you can see, it simply writes crash dump information
to stdout, not to a file.
Logger plugin spawns a child abrt-action-print -d DIR
and pipes its output to log file.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tool works similarly to abrt-action-bugzilla:
Usage: abrt-action-rhtsupport -c CONFFILE -d DIR [-vs]
Report a crash to RHTSupport
Options:
-c FILE Configuration file (may be given many times)
-d DIR Crash dump directory
-v Verbose
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usage: abrt-action-analyze-oops [-vs] -d DIR
Calculates and saves UUID and DUPHASH of oops crash dumps
-v, --verbose be verbose
-d DIR Crash dump directory
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off uuid generation for Python
to a separate program:
Usage: abrt-action-analyze-python [-vs] -d DIR
Calculates and saves UUID and DUPHASH of python crash dumps
-v, --verbose be verbose
-d DIR Crash dump directory
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lock file "..lock", which is obviously wrong.
This patch makes dd_opendir use realpath(dir_name).
This makes dd_opendir(".") and similar cases correctly
determine what is its parent directory and therefore
use correct lock file name.
dd_create can't use realpath, since it will always return NULL
on not-yet existing directory. But this is not a problem, since
dd_create(".") isn't a sane operation. So we continue to use
old code. I only added a sanity check to refuse names ending
in . and .. - just in case.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
KerneloopsScanner: dd leak on error path in save_oops_to_debug_dump()
dump_dir:
remove superfluous exist_file_dir check in dd_opendir, dd_create,
delete_file_dir; use perror_msg instead of error_msg;
correct some sligtly wrong log/error messages;
make delete_file_dir return void, since return value is never checked.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off uuid generation for CCpp
to a separate program:
Usage: abrt-action-analyze-c [-v] -d DIR
Calculates and saves UUID
-v, --verbose be verbose
-d DIR Crash dump directory
Run tested.
Thus, now entire cycle of coredump processing/reporting
consists of external programs:
abrt-action-analyze-c
abrt-action-save-package-data
abrt-action-install-debuginfo
abrt-action-generate-backtrace
abrt-action-bugzilla
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes it easier to analyze "bool" type options -
now they are all just bits in a single return value,
no need to have an integer variable for each option.
The previous behavior is retained too: it is useful for
"cumulative" options like -vvv.
The patch also removes all OPT_GROUPs.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off Bugzilla plugin's bugzilla submission
generation into a separate tool:
abrt-action-bugzilla: invalid option -- 'z'
Usage: abrt-action-bugzilla -c CONFFILE -d DIR [-vs]
Report a crash to Bugzilla
Options:
-c FILE Configuration file (may be given many times)
-d DIR Crash dump directory
-v Verbose
-s Log to syslog
This change is bigger than previous similar patches:
I needed to find a way to pass settings to the child
and get back reporting result - all without breaking
current interface.
I decided to pass configuration via -c CONFFILE:
(1) it is trivial to pass /etc/abrt/bugzilla.conf to it,
and
(2) I can use "-c -" to parse config from stdin.
abrtd simply write per-reporting settings to child's stdin.
The log and reporting result (success/failure) is
taken from child's stdout.
After a few more such patches, we can remove XMLRPC
and HTTP code and library dependencies from abrtd.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This is needed to make duplicate hash visible for separate programs
looking at crash dumps.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, usage is an array of pointers to string.
It is meant to support this:
usage: foo --bar
or: foo --baz
or: foo -z
The patch removes this and makes usage just a string:
usage: foo --bar
Why remove this?
(1) We can achieve old format by using the usage string with many lines:
usage = "foo --bar\n"
" or: foo --baz\n"
" or: foo -z";
(2) We don't use multi-line usage anyway.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This patch removes the need to add --help option to every program.
It is added (and handled) by parse_opts().
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
| |
vector_string_t was replaced by glist in these files
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|