mirror of
https://github.com/rsyslog/rsyslog.git
synced 2025-12-15 10:30:40 +01:00
modernize them, reduce robustness against slow machines, provide some test framework functional enhancements and optimizie some tests
35 lines
1.1 KiB
Bash
Executable File
35 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Test for the $ActionExecOnlyOnceEveryInterval directive.
|
|
# We inject a couple of messages quickly during the interval,
|
|
# then wait until the interval expires, then quickly inject
|
|
# another set. After that, it is checked if exactly two messages
|
|
# have arrived.
|
|
# The once interval must be set to 3 seconds in the config file.
|
|
# added 2009-11-12 by Rgerhards
|
|
# This file is part of the rsyslog project, released under ASL 2.0
|
|
. ${srcdir:=.}/diag.sh init
|
|
generate_conf
|
|
add_conf '
|
|
module(load="../plugins/imtcp/.libs/imtcp")
|
|
input(type="imtcp" port="0" listenPortFileName="'$RSYSLOG_DYNNAME'.tcpflood_port")
|
|
|
|
$template outfmt,"%msg:F,58:2%\n"
|
|
template(name="dynfile" type="string" string="'$RSYSLOG_OUT_LOG'")
|
|
$ActionExecOnlyOnceEveryInterval 3
|
|
:msg, contains, "msgnum:" ?dynfile;outfmt
|
|
'
|
|
startup
|
|
tcpflood -m10 -i1
|
|
# now wait until the interval definitely expires (at least we hope so...)
|
|
printf 'wainting for interval to expire...\n'
|
|
sleep 5
|
|
# and inject another couple of messages
|
|
tcpflood -m10 -i100
|
|
shutdown_when_empty
|
|
wait_shutdown
|
|
|
|
export EXPECTED="00000001
|
|
00000100"
|
|
cmp_exact
|
|
exit_test
|