rsyslog/tests/imuxsock_logger_ratelimit.sh
google-labs-jules[bot] cd43f8c9af Modernize imuxsock tests: Replace backtick expansion with shell expansion
Replaced legacy internal backtick expansion (e.g., file=`echo $RSYSLOG_OUT_LOG`)
with standard shell expansion (e.g., file="'$RSYSLOG_OUT_LOG'") in imuxsock
test scripts. This avoids unnecessary runtime shell forking and aligns with
project best practices.

Affected files:
- tests/imuxsock_ccmiddle_root.sh
- tests/imuxsock_ccmiddle_syssock.sh
- tests/imuxsock_hostname.sh
- tests/imuxsock_impstats.sh
- tests/imuxsock_logger.sh
- tests/imuxsock_logger_err.sh
- tests/imuxsock_logger_parserchain.sh
- tests/imuxsock_logger_ratelimit.sh
- tests/imuxsock_logger_root.sh
- tests/imuxsock_logger_ruleset.sh
- tests/imuxsock_logger_ruleset_ratelimit.sh
- tests/imuxsock_traillf.sh
- tests/imuxsock_traillf_root.sh
- tests/imuxsock_traillf_syssock.sh

Co-authored-by: rgerhards <1482123+rgerhards@users.noreply.github.com>
2026-02-04 13:33:34 +00:00

48 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
echo \[imuxsock_logger_ratelimit.sh\]: test rate limiting with imuxsock
. ${srcdir:=.}/diag.sh init
./syslog_caller -fsyslog_inject-l -m0 > /dev/null 2>&1
no_liblogging_stdlog=$?
if [ $no_liblogging_stdlog -ne 0 ];then
echo "liblogging-stdlog not available - skipping test"
exit 77
fi
export EXPECTED=" test message nbr 0, severity=6
test message nbr 1, severity=6
test message nbr 2, severity=6
test message nbr 3, severity=6
test message nbr 4, severity=6"
for use_special_parser in on off; do
echo \[imuxsock_logger_ratelimit.sh\]: test rate limiting with imuxsock with useSpecialParser="$use_special_parser"
echo -n >"$RSYSLOG_OUT_LOG"
generate_conf
add_conf '
module(load="../plugins/imuxsock/.libs/imuxsock" sysSock.use="off")
input( type="imuxsock" socket="'$RSYSLOG_DYNNAME'-testbench_socket"
useSpecialParser="'$use_special_parser'"
ruleset="testruleset"
ratelimit.interval="10"
ratelimit.burst="5")
template(name="outfmt" type="string" string="%msg:%\n")
ruleset(name="testruleset") {
action(type="omfile" file="'$RSYSLOG_OUT_LOG'" template="outfmt")
}
'
startup
./syslog_caller -m20 -C "uxsock:$RSYSLOG_DYNNAME-testbench_socket" -s6
# the sleep below is needed to prevent too-early termination of rsyslogd
./msleep 100
shutdown_when_empty
wait_shutdown
cmp_exact
done
exit_test