Collect ramoops data into BMC dump
- Add ramoops file monitor and support to enable ramoops data
collection for kernel dump.
- Systemd will collect ramoops data and write it into
/var/lib/systemd/pstore when a system kernel oops/panics.
- Today, need to grab everything in that directory, put it in a dump
and then delete everything in that directory.
Tested:
- Simulate a kernel panic by creating similar data in the expected
location.
`dmesg > /var/lib/systemd/pstore/dmesg1.txt`
`dmesg > /var/lib/systemd/pstore/dmesg2.txt`
`dmesg > /var/lib/systemd/pstore/dmesg3.txt`
`dmesg > /var/lib/systemd/pstore/dmesg4.txt`
tar -tvf obmcdump_1_248.tar.xz:
drwxr-xr-x 0/0 0 1970-01-01 00:01:32 obmcdump_1_248/
-rw-r--r-- 0/0 21239 1970-01-01 00:01:32 obmcdump_1_248/dmesg1.txt
-rw-r--r-- 0/0 21239 1970-01-01 00:01:32 obmcdump_1_248/dmesg2.txt
-rw-r--r-- 0/0 21239 1970-01-01 00:01:32 obmcdump_1_248/dmesg3.txt
-rw-r--r-- 0/0 21239 1970-01-01 00:01:32 obmcdump_1_248/dmesg4.txt
-rw-r--r-- 0/0 162 1970-01-01 00:01:32 obmcdump_1_248/dreport.log
-rw-r--r-- 0/0 294 1970-01-01 00:01:31 obmcdump_1_248/os-release
-rw-r--r-- 0/0 278 1970-01-01 00:01:31 obmcdump_1_248/summary.log
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I05bca408f4dcc2b62350104a0c5f757d740dde22
diff --git a/tools/dreport.d/plugins.d/ramoops b/tools/dreport.d/plugins.d/ramoops
new file mode 100644
index 0000000..66324f0
--- /dev/null
+++ b/tools/dreport.d/plugins.d/ramoops
@@ -0,0 +1,19 @@
+#!/bin/bash
+#
+# config: 5 1
+# @brief: Move the ramoops data file to the dreport packaging.
+#
+
+. $DREPORT_INCLUDE/functions
+
+desc="Ramoops file"
+
+for path in ${optional_path}/*
+do
+ if [ -f $path ]; then
+ # Remove the file from path after successful copy
+ if add_copy_file "$path" "$desc"; then
+ rm "$path"
+ fi
+ fi
+done