#!/bin/bash # rgerhards, 2016-02-18 released under ASL 2.0 echo \[imuxsock_logger_ruleset_ratelimit.sh\]: test imuxsock with ruleset definition . ${srcdir:=.}/diag.sh init check_logger_has_option_d generate_conf add_conf ' module(load="../plugins/imuxsock/.libs/imuxsock" sysSock.use="off") input( type="imuxsock" socket="'$RSYSLOG_DYNNAME'-testbench_socket" useSpecialParser="off" ruleset="testruleset" rateLimit.Interval="2" parseHostname="on") template(name="outfmt" type="string" string="%msg:%\n") ruleset(name="testruleset") { action(type="omfile" file=`echo $RSYSLOG_OUT_LOG` template="outfmt") } ' startup # send a message with trailing LF logger -d -u $RSYSLOG_DYNNAME-testbench_socket test # the sleep below is needed to prevent too-early termination of rsyslogd ./msleep 100 shutdown_when_empty # shut down rsyslogd when done processing messages wait_shutdown # we need to wait until rsyslogd is finished! cmp $RSYSLOG_OUT_LOG $srcdir/resultdata/imuxsock_logger.log echo \"$(cat $RSYSLOG_OUT_LOG)\" if [ ! $? -eq 0 ]; then echo "imuxsock_logger.sh failed" echo "contents of $RSYSLOG_OUT_LOG:" echo \"$(cat $RSYSLOG_OUT_LOG)\" exit 1 fi; exit_test