diff options
Diffstat (limited to '')
-rwxr-xr-x | tests/imhttp-post-payload.sh | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/imhttp-post-payload.sh b/tests/imhttp-post-payload.sh new file mode 100755 index 0000000..2d1af19 --- /dev/null +++ b/tests/imhttp-post-payload.sh @@ -0,0 +1,38 @@ +#!/bin/bash +# This is part of the rsyslog testbench, licensed under ASL 2.0 + +. ${srcdir:=.}/diag.sh init +generate_conf +IMHTTP_PORT="$(get_free_port)" +add_conf ' +template(name="outfmt" type="string" string="%msg%\n") +module(load="../contrib/imhttp/.libs/imhttp" + ports="'$IMHTTP_PORT'") +input(type="imhttp" endpoint="/postrequest" ruleset="ruleset") +ruleset(name="ruleset") { + action(type="omfile" file=`echo $RSYSLOG_OUT_LOG` template="outfmt") +} +' +startup +sleep 1 +NUMMESSAGES=50 +for (( i=1; i<=NUMMESSAGES; i++ )) +do + curl -si -H Content-Type:application/json http://localhost:$IMHTTP_PORT/postrequest -d '[{"foo":"bar","bar":"foo"},{"one":"two","three":"four"}]' & + pids[${i}]=$! +done + +# wait for all pids +for pid in ${pids[*]}; +do + wait $pid +done + +sleep 2 +wait_queueempty +echo "doing shutdown" +shutdown_when_empty +wait_shutdown +echo "file name: $RSYSLOG_OUT_LOG" +content_count_check '[{"foo":"bar","bar":"foo"},{"one":"two","three":"four"}]' $NUMMESSAGES +exit_test |