Browse code

Capture the content of 'audit.log' file

On CentOS/ Fedora machines, this can be useful when QEMU silently fails
to start up due to SELinux denials. For Debian-based machines, which
use AppAromor, DevStack already captures the output of 'kern.log' (via
`journalctl -t kernel` redirected into 'syslog.txt.gz').

Change-Id: I231b22664f0944b905e00568759785615a1d47c3
Acked-by: Clark Bolyan <clark.boylan@gmail.com>
Signed-off-by: Kashyap Chamarthy <kchamart@redhat.com>

Kashyap Chamarthy authored on 2019/02/23 04:11:35
Showing 2 changed files
... ...
@@ -218,6 +218,7 @@
218 218
         '{{ stage_dir }}/core': logs
219 219
         '{{ stage_dir }}/listen53.txt': logs
220 220
         '{{ stage_dir }}/deprecations.log': logs
221
+        '{{ stage_dir }}/audit.log': logs
221 222
         /var/log/ceph: logs
222 223
         /var/log/openvswitch: logs
223 224
         /var/log/glusterfs: logs
... ...
@@ -19,6 +19,17 @@
19 19
           rpm -qa | sort > {{ stage_dir }}/rpm-qa.txt
20 20
       fi
21 21
 
22
+      # NOTE(kchamart) The 'audit.log' can be useful in cases when QEMU
23
+      # failed to start due to denials from SELinux — useful for CentOS
24
+      # and Fedora machines.  For Ubuntu (which runs AppArmor), DevStack
25
+      # already captures the contents of /var/log/kern.log (via
26
+      # `journalctl -t kernel` redirected into syslog.txt.gz), which
27
+      # contains AppArmor-related messages.
28
+      if [ -f /var/log/audit/audit.log ] ; then
29
+          sudo cp /var/log/audit/audit.log {{stage_dir }}/audit.log &&
30
+          chmod +r {{ stage_dir }}/audit.log;
31
+      fi
32
+
22 33
       # gzip and save any coredumps in /var/core
23 34
       if [ -d /var/core ]; then
24 35
           sudo gzip -r /var/core