From: Yu Watanabe Date: Sun, 26 May 2024 01:05:57 +0000 (+0900) Subject: test: use SYSLOG_IDENTIFIER= filter instead of "journalctl -u" X-Git-Tag: v256-rc4~124 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fbe1e72effbd6ad20c00d71e87f64daae094d207;p=thirdparty%2Fsystemd.git test: use SYSLOG_IDENTIFIER= filter instead of "journalctl -u" "journalctl -u foo.service" may not work as expected, especially entries for _TRANSPORT=stdout, for short-living services or when the service manager generates debugging logs. Instead, SYSLOG_IDENTIFIER= should be reliable for stdout. Let's use it. An example case: ``` __CURSOR=s=06278e3bf011458e973c81d370a8f7a5;i=1e4dc;b=1b0258a5c78341609bf462c72d4541c3;m=308de65;t=6194c3895a13f;x=50c7e9af5b8cfc37 __REALTIME_TIMESTAMP=1716665017803071 __MONOTONIC_TIMESTAMP=50912869 _BOOT_ID=1b0258a5c78341609bf462c72d4541c3 SYSLOG_FACILITY=3 _UID=0 _GID=0 _MACHINE_ID=d3490e076ab24968bfa19a6aab26beb3 _HOSTNAME=H _RUNTIME_SCOPE=system _TRANSPORT=stdout PRIORITY=6 _PID=2668 _STREAM_ID=3f9b8855636041988d003a9c63379b8a SYSLOG_IDENTIFIER=echo MESSAGE=foo ``` As you can see, there is no unit identifier. --- diff --git a/test/units/TEST-50-DISSECT.dissect.sh b/test/units/TEST-50-DISSECT.dissect.sh index 4eeca3a2676..563206ce7e4 100755 --- a/test/units/TEST-50-DISSECT.dissect.sh +++ b/test/units/TEST-50-DISSECT.dissect.sh @@ -724,7 +724,10 @@ systemd-sysext unmerge --no-reload systemd-sysext merge journalctl --sync set +o pipefail -timeout -v 30s journalctl -b -u foo.service _TRANSPORT=stdout -o cat -n all --follow | grep -m 1 -q '^foo$' +# "journalctl -u foo.service" may not work as expected, especially entries for _TRANSPORT=stdout, +# for short-living services or when the service manager generates debugging logs. +# Instead, SYSLOG_IDENTIFIER= should be reliable for stdout. Let's use it. +timeout -v 30s journalctl -b SYSLOG_IDENTIFIER=echo _TRANSPORT=stdout -o cat -n all --follow | grep -m 1 -q '^foo$' set -o pipefail systemd-sysext unmerge --no-reload # Grep on the Warning to find the warning helper mentioning the daemon reload.