summaryrefslogtreecommitdiff
path: root/meta-ampere/meta-common
diff options
context:
space:
mode:
authorChau Ly <chaul@amperecomputing.com>2023-01-13 06:41:22 +0300
committerChau Ly <chaul@amperecomputing.com>2023-01-13 07:03:44 +0300
commit74946010ffb0b679bdf4341d8e1f012b61181ccc (patch)
tree24b55058bb3fb5ae570ca7040b1d5a0587217f24 /meta-ampere/meta-common
parent0ea73d38736b6f2dfc1bc42a5b855bef4d016f79 (diff)
downloadopenbmc-74946010ffb0b679bdf4341d8e1f012b61181ccc.tar.xz
meta-ampere: mtjade: Support host consoles logger
This commit supports phosphor-hostlogger in STREAM mode, to forward the byte stream from obmc-console to rsyslog via the imuxsock module. The logs can be obtained in /var/log/. The logs are rotated by logrotate. The size threshold of cpu console is 256KB and the others are 64KB. Each log is polled every 1 minute to check if its file size exceeds the threshold to rotate it to the new file. Each console can be saved in up to 2 log files. Tested (CPU console): 1. Change the mux of CPU console to BMC $ ampere_uartmux_ctrl.sh 1 2 2. Connect to CPU SOL console $ ssh root@<BMC_IP> -p 2200 3. Execute commands in the CPU SOL console => The console output on CPU SOL console will all be logged to /var/log/obmc-console-cpu.log => The log will be rotated to /var/log/obmc-console-cpu.log.1 if the original log file size exceeds 256KB every 1min poll Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: I5586d1c634ec0f244069b868bd48b75560520dc1
Diffstat (limited to 'meta-ampere/meta-common')
-rw-r--r--meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/hostconsole.conf91
-rw-r--r--meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate45
-rw-r--r--meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog_%.bbappend2
3 files changed, 138 insertions, 0 deletions
diff --git a/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/hostconsole.conf b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/hostconsole.conf
new file mode 100644
index 0000000000..6900a5d942
--- /dev/null
+++ b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/hostconsole.conf
@@ -0,0 +1,91 @@
+#Host console log
+
+module(load="imuxsock" SysSock.Use="off")
+
+template(name="ConsoleTemplate" type="string" string="%rawmsg%")
+
+ruleset(name="ConsoleCPURuleset") {
+ action(type="omfile" file="/var/log/obmc-console-cpu.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleATFRuleset") {
+ action(type="omfile" file="/var/log/obmc-console-atf.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleSECPRO0Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-secpro0.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleSECPRO1Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-secpro1.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleMPRO0Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-mpro0.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleMPRO1Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-mpro1.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleSCP0Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-scp0.log" template="ConsoleTemplate")
+}
+ruleset(name="ConsoleSCP1Ruleset") {
+ action(type="omfile" file="/var/log/obmc-console-scp1.log" template="ConsoleTemplate")
+}
+
+# Custom socket for serial console logs.
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/cpu"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleCPURuleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/atf"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleATFRuleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/secpro0"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleSECPRO0Ruleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/secpro1"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleSECPRO1Ruleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/mpro0"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleMPRO0Ruleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/mpro1"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleMPRO1Ruleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/scp0"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleSCP0Ruleset")
+
+input(type="imuxsock"
+ Socket="/run/rsyslog/console/scp1"
+ CreatePath="on"
+ UseSpecialParser="off"
+ ParseHostname="off"
+ ruleset="ConsoleSCP1Ruleset")
+
+$EscapeControlCharactersOnReceive off
+$DropTrailingLFOnReception off
+
diff --git a/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate
index a6ba28d864..098236a8f5 100644
--- a/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate
+++ b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate
@@ -20,3 +20,48 @@
systemctl reload rsyslog 2> /dev/null || true
endscript
}
+# Keep up to 2 256k files for cpu console logs
+/var/log/obmc-console-cpu.log
+{
+ copytruncate
+ rotate 1
+ size 256k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
+# Keep up to 2 64k files for atf console logs
+/var/log/obmc-console-atf.log
+{
+ copytruncate
+ rotate 1
+ size 64k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
+# Keep up to 2 64k files for secpro and mpro console logs
+/var/log/obmc-console-*pro*.log
+{
+ copytruncate
+ rotate 1
+ size 64k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
+
+# Keep up to 2 64k files for Mt.Jade's scp console logs
+/var/log/obmc-console-scp*.log
+{
+ copytruncate
+ rotate 1
+ size 64k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
diff --git a/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog_%.bbappend b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog_%.bbappend
index 034ae3cfa7..863f314e28 100644
--- a/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog_%.bbappend
+++ b/meta-ampere/meta-common/recipes-extended/rsyslog/rsyslog_%.bbappend
@@ -5,6 +5,7 @@ SRC_URI += "file://rsyslog.conf \
file://rotate-event-logs.service \
file://rotate-event-logs.sh \
file://rsyslog-override.conf \
+ file://hostconsole.conf \
"
FILES:${PN} += "${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf"
@@ -18,6 +19,7 @@ do_install:append() {
${D}${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf
install -d ${D}${bindir}
install -m 0755 ${WORKDIR}/rotate-event-logs.sh ${D}/${bindir}/rotate-event-logs.sh
+ install -m 0755 ${WORKDIR}/hostconsole.conf ${D}${sysconfdir}/rsyslog.d/hostconsole.conf
rm ${D}${sysconfdir}/rsyslog.d/imjournal.conf
}