blob: 5f2dad48d9defbea48f6967cb2961c3ec38c4bad (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
#!/bin/bash
# This file is part of the rsyslog project, released under ASL 2.0
# Starting actual testbench
. ${srcdir:=.}/diag.sh init
export NUMMESSAGES=50000
port="$(get_free_port)"
omhttp_start_server $port --fail-every 100 --fail-with 207
generate_conf
add_conf '
module(load="../contrib/omhttp/.libs/omhttp")
main_queue(queue.dequeueBatchSize="2048")
template(name="tpl" type="string"
string="{\"msgnum\":\"%msg:F,58:2%\"}")
# Echo message as-is for retry
template(name="tpl_echo" type="string" string="%msg%\n")
# Echo response as-is for retry
template(name="tpl_response" type="string" string="{ \"message\": %msg%, \"response\": %$!omhttp!response% }\n")
ruleset(name="ruleset_omhttp_retry") {
#action(type="omfile" file="'$RSYSLOG_DYNNAME/omhttp.message.log'" template="tpl_echo")
# log the response
action(type="omfile" file="'$RSYSLOG_DYNNAME/omhttp.response.log'" template="tpl_response")
action(
name="action_omhttp"
type="omhttp"
errorfile="'$RSYSLOG_DYNNAME/omhttp.error.log'"
template="tpl_echo"
server="localhost"
serverport="'$port'"
restpath="my/endpoint"
batch="on"
batch.maxsize="100"
batch.format="kafkarest"
httpretrycodes=["207","500"]
retry="on"
retry.ruleset="ruleset_omhttp_retry"
retry.addmetadata="on"
# Auth
usehttps="off"
) & stop
}
ruleset(name="ruleset_omhttp") {
action(
name="action_omhttp"
type="omhttp"
errorfile="'$RSYSLOG_DYNNAME/omhttp.error.log'"
template="tpl"
server="localhost"
serverport="'$port'"
restpath="my/endpoint"
batch="on"
batch.maxsize="100"
batch.format="kafkarest"
httpretrycodes=["207", "500"]
retry="on"
retry.ruleset="ruleset_omhttp_retry"
retry.addmetadata="on"
# Auth
usehttps="off"
) & stop
}
if $msg contains "msgnum:" then
call ruleset_omhttp
'
startup
injectmsg
shutdown_when_empty
wait_shutdown
omhttp_get_data $port my/endpoint kafkarest
omhttp_stop_server
seq_check
omhttp_validate_metadata_response
exit_test
|