rsyslog/tests/omrabbitmq_error_server1.sh
Rainer Gerhards b43ee45a03
testbench: fix tests affected by commit 8791323c92039
commit 8791323c92039 fixed invalid handling of first space in MSG.
This broke some test, but was not detected at the time of its merge.
This is now fixed with this follow-up commit.
2019-06-17 13:18:23 +02:00

52 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
# add 2019-09-03 by Philippe Duveau, released under ASL 2.0
. ${srcdir:=.}/diag.sh init
cmd="./miniamqpsrvr -b 2 -f $RSYSLOG_DYNNAME.amqp.log -d"
echo $cmd
eval $cmd > $RSYSLOG_DYNNAME.source
if [ ! $? -eq 0 ]; then
exit 77
fi
. $RSYSLOG_DYNNAME.source
export OMRABBITMQ_TEST=2000
generate_conf
add_conf '
global(localhostname="server")
module(load="../contrib/omrabbitmq/.libs/omrabbitmq")
template(name="rkTpl" type="string" string="%syslogtag%.%syslogfacility-text%.%syslogpriority-text%")
# rfc5424 without Timestamp : unable to manage
template(name="bodyTpl" type="string" string="<%PRI%>1 %HOSTNAME% %APP-NAME% %PROCID% %MSGID% %STRUCTURED-DATA% %msg:2:$%\n")
ruleset(name="rmq") {
action(type="omrabbitmq" host="localhost:'$PORT_AMQP1' localhost:'$PORT_AMQP2'" port="5672"
user="mtr" password="mtr" exchange="in" expiration="5000"
exchange_type="topic" durable="on" auto_delete="off"
body_template="" content_type="rfc5424"
virtual_host="/metrologie" routing_key_template="rkTpl"
populate_properties="on" delivery_mode="transient"
)
}
if $msg contains "msgrmq" then {
call rmq
}
action(type="omfile" file="'$RSYSLOG_OUT_LOG'")
'
startup
injectmsg litteral "<167>Mar 1 01:00:00 172.20.245.8 tag msgrmq"
shutdown_when_empty
wait_shutdown
expected=$(printf 'Exchange:in, routing-key:tag.local4.debug, content-type:plain/text, facility:local4, severity:debug, hostname:172.20.245.8, fromhost:127.0.0.1, delivery-mode:transient, expiration:5000, timestamp:OK, app-id:tag, msg:<167>Mar 1 01:00:00 172.20.245.8 tag msgrmq')
echo ${expected} | cmp - $RSYSLOG_DYNNAME.amqp.log
if [ ! $? -eq 0 ]; then
echo "Expected:"
echo ${expected}
echo "invalid response generated, $RSYSLOG_DYNNAME.amqp.log is:"
cat $RSYSLOG_DYNNAME.amqp.log
echo "Rsyslog internal output log:"
cat $RSYSLOG_OUT_LOG
error_exit 1
fi;
content_check "disconnected while exchange declare"
exit_test