rsyslog/tests/mmjsonparse_extra_data-vg.sh
2018-11-06 13:22:12 +01:00

32 lines
941 B
Bash
Executable File

#!/bin/bash
# ensure mmjsonparse works correctly if passed unparsable message
# add 2018-11-05 by Rainer Gerhards, released under ASL 2.0
. ${srcdir:=.}/diag.sh init
generate_conf
add_conf '
module(load="../plugins/mmjsonparse/.libs/mmjsonparse")
module(load="../plugins/imtcp/.libs/imtcp")
input(type="imtcp" port="'$TCPFLOOD_PORT'")
template(name="outfmt" type="string" string="-%msg%-\n")
action(type="mmjsonparse" cookie="")
if $parsesuccess == "OK" then {
action(type="omfile" file="'$RSYSLOG_OUT_LOG'" template="outfmt")
}
else if $parsesuccess == "FAIL" and $msg contains "param1" then {
action(type="omfile" file="'$RSYSLOG2_OUT_LOG'" template="outfmt")
}
'
startup_vg
tcpflood -m2 -M "\"{\\\"param1\\\":\\\"value1\\\"} data\""
shutdown_when_empty
wait_shutdown_vg
check_exit_vg
check_file_not_exists $RSYSLOG_OUT_LOG
export EXPECTED='-{"param1":"value1"} data-
-{"param1":"value1"} data-'
cmp_exact $RSYSLOG2_OUT_LOG
exit_test