summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2011-05-10 18:52:52 +0200
committerDenys Vlasenko <dvlasenk@redhat.com>2011-05-10 18:52:52 +0200
commit60ed34c6de8b30624774c50cbb6bfc05740b4a1a (patch)
tree2399cc84da8d6df88c55900206f53ad97569e911
parent09b5c4b42e9c75c523f4dc3a2036c33dfb5f234b (diff)
downloadabrt-60ed34c6de8b30624774c50cbb6bfc05740b4a1a.tar.gz
abrt-60ed34c6de8b30624774c50cbb6bfc05740b4a1a.tar.xz
abrt-60ed34c6de8b30624774c50cbb6bfc05740b4a1a.zip
Add analyzer which collects ~/.xsession-errors. Closes bz#539532
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
-rw-r--r--abrt.spec.in2
-rw-r--r--src/gui-wizard-gtk/wizard.c2
-rw-r--r--src/plugins/Makefile.am4
-rw-r--r--src/plugins/analyze_var_log_messages.xml.in10
-rw-r--r--src/plugins/analyze_xsession_errors.xml.in10
-rw-r--r--src/plugins/ccpp_events.conf23
6 files changed, 31 insertions, 20 deletions
diff --git a/abrt.spec.in b/abrt.spec.in
index af8be2c9..99c19684 100644
--- a/abrt.spec.in
+++ b/abrt.spec.in
@@ -540,7 +540,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{_sysconfdir}/%{name}/events.d/ccpp_events.conf
%{_sysconfdir}/%{name}/events/analyze_LocalGDB.xml
%{_sysconfdir}/%{name}/events/analyze_RetraceServer.xml
-%{_sysconfdir}/%{name}/events/analyze_var_log_messages.xml
+%{_sysconfdir}/%{name}/events/analyze_xsession_errors.xml
%{_mandir}/man*/abrt-action-trim-files.*
%{_mandir}/man*/abrt-action-generate-backtrace.*
%{_mandir}/man*/abrt-action-analyze-backtrace.*
diff --git a/src/gui-wizard-gtk/wizard.c b/src/gui-wizard-gtk/wizard.c
index ba0d9b90..6366a353 100644
--- a/src/gui-wizard-gtk/wizard.c
+++ b/src/gui-wizard-gtk/wizard.c
@@ -497,7 +497,7 @@ static event_gui_data_t *add_event_buttons(GtkBox *box,
if (get_problem_data_item_or_NULL(g_cd, cfg->creates_elements))
{
green_choice = true;
- event_description = tmp_description = xasprintf("(not needed, %s already exists)", cfg->creates_elements);
+ event_description = tmp_description = xasprintf(_("(not needed, '%s' already exists)"), cfg->creates_elements);
}
}
}
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am
index 7221079a..1ef7fbc2 100644
--- a/src/plugins/Makefile.am
+++ b/src/plugins/Makefile.am
@@ -40,7 +40,7 @@ dist_events_DATA = \
report_Logger.conf \
analyze_LocalGDB.xml \
analyze_RetraceServer.xml \
- analyze_var_log_messages.xml \
+ analyze_xsession_errors.xml \
report_Mailx.xml \
report_RHTSupport.xml \
report_Kerneloops.xml
@@ -91,7 +91,7 @@ EXTRA_DIST = \
$(MAN_TXT) \
$(PYTHON_FILES) \
$(man1_MANS) \
- analyze_var_log_messages.xml.in \
+ analyze_xsession_errors.xml.in \
analyze_LocalGDB.xml.in \
analyze_RetraceServer.xml.in \
report_Bugzilla.xml.in \
diff --git a/src/plugins/analyze_var_log_messages.xml.in b/src/plugins/analyze_var_log_messages.xml.in
deleted file mode 100644
index fa5edbff..00000000
--- a/src/plugins/analyze_var_log_messages.xml.in
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<event>
- <name>Collect /var/log/messages</name>
- <_description>Save relevant lines in /var/log/messages</_description>
- <_long-description>
- Scans through /var/log/messages file and saves those lines which contain executable's name.
- The result is saved as 'var_log_messages' element.
- </_long-description>
- <creates-elements>var_log_messages</creates-elements>
-</event>
diff --git a/src/plugins/analyze_xsession_errors.xml.in b/src/plugins/analyze_xsession_errors.xml.in
new file mode 100644
index 00000000..9f7a46bf
--- /dev/null
+++ b/src/plugins/analyze_xsession_errors.xml.in
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<event>
+ <name>Collect .xsession-errors</name>
+ <_description>Save relevant lines from ~/.xsession-errors file</_description>
+ <_long-description>
+ Scans through ~/.xsession-errors file and saves those lines which contain executable's name.
+ The result is saved as 'xsession_errors' element.
+ </_long-description>
+ <creates-elements>xsession_errors</creates-elements>
+</event>
diff --git a/src/plugins/ccpp_events.conf b/src/plugins/ccpp_events.conf
index ca9ac558..eb3384a6 100644
--- a/src/plugins/ccpp_events.conf
+++ b/src/plugins/ccpp_events.conf
@@ -1,14 +1,25 @@
EVENT=post-create analyzer=CCpp
abrt-action-analyze-c &&
- abrt-action-list-dsos.py -m maps -o dsos
+ abrt-action-list-dsos.py -m maps -o dsos &&
+ (
+ # Try to save relevant log lines.
+ # Can't do it as analyzer step, non-root can't read log.
+ # It's not an error if /var/log/messages isn't readable:
+ test -f /var/log/messages || exit 0
+ test -r /var/log/messages || exit 0
+ executable=`cat executable` &&
+ base_executable=${executable##*/} &&
+ grep -e "$base_executable" /var/log/messages | tail -999 >var_log_messages &&
+ echo "Element 'var_log_messages' saved"
+ )
-EVENT=analyze_var_log_messages analyzer=CCpp
- test -f /var/log/messages || { echo "No /var/log/messages"; exit 1; }
- test -r /var/log/messages || { echo "Can't read /var/log/messages"; exit 1; }
+EVENT=analyze_xsession_errors analyzer=CCpp
+ test -f ~/.xsession-errors || { echo "No ~/.xsession-errors"; exit 1; }
+ test -r ~/.xsession-errors || { echo "Can't read ~/.xsession-errors"; exit 1; }
executable=`cat executable` &&
base_executable=${executable##*/} &&
- grep -e "$base_executable" /var/log/messages | tail -999 >var_log_messages &&
- echo "var_log_messages element saved"
+ grep -e "$base_executable" ~/.xsession-errors | tail -999 >xsession_errors &&
+ echo "Element 'xsession_errors' saved"
# TODO: can we still specify additional directories to search for debuginfos,
# or was this ability lost with move to python installer?