rsyslog/tests/omhttp-dynrestpath.sh
Andre lorbach bda68f999d omhttp: Fix dynrestpath param in batch mode
When batchmode was used, the templates could not be used to
expand dynrestpath. We are now storing the restpath param
within the batch data if we are in batch mode.

- testbench: Added tests for omhttp dynrestpath param
  Testing setting the restpath by template - one with batch mode
  and one without batch mode
- When we are in batch mode, and the restpath value changes, the
  batch is submitted and reinitialized

closes: https://github.com/rsyslog/rsyslog/issues/4567
2021-06-16 11:43:08 +02:00

48 lines
985 B
Bash
Executable File

#!/bin/bash
# This file is part of the rsyslog project, released under ASL 2.0
# Starting actual testbench
. ${srcdir:=.}/diag.sh init
export NUMMESSAGES=10000
export RSYSLOG_DEBUG="debug nologfuncflow noprintmutexaction nostdout"
export RSYSLOG_DEBUGLOG="$RSYSLOG_DYNNAME.receiver.debuglog"
port="$(get_free_port)"
omhttp_start_server $port
generate_conf
add_conf '
template(name="tpl" type="string"
string="{\"msgnum\":\"%msg:F,58:2%\"}")
template(name="dynrestpath" type="string" string="my/endpoint")
module(load="../contrib/omhttp/.libs/omhttp")
if $msg contains "msgnum:" then
action(
# Payload
name="my_http_action"
type="omhttp"
errorfile="'$RSYSLOG_DYNNAME/omhttp.error.log'"
template="tpl"
server="localhost"
serverport="'$port'"
dynrestpath = "on"
restpath="dynrestpath"
batch="off"
# Auth
usehttps="off"
)
'
startup
injectmsg
shutdown_when_empty
wait_shutdown
omhttp_get_data $port my/endpoint
omhttp_stop_server
seq_check
exit_test