Skip to content

Commit ebca2b1

Browse files
committed
load-generator status-server now generating JSON structure for linelog messages.
1 parent 26c713b commit ebca2b1

2 files changed

Lines changed: 40 additions & 2 deletions

File tree

  • src/tests/multi-server/environments/configs/freeradius
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
json {
2+
encode {
3+
output_mode = object_simple
4+
value {
5+
binary_format = base16
6+
}
7+
}
8+
}

src/tests/multi-server/environments/configs/freeradius/load-generator/radiusd.conf.j2

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,16 @@ modules {
2929
# Common linelog module configuration
3030
{% include "environments/configs/freeradius/common/mods-available/linelog" %}
3131

32-
# Test-framework specific linelog module configuration based on OS environment
32+
# Test framework linelog module configuration based on OS environment
3333
{% if listener_type == "unix" %}
3434
{% include "environments/configs/freeradius/common/mods-available/linelog_socket" %}
3535
{% elif listener_type == "file" %}
3636
{% include "environments/configs/freeradius/common/mods-available/linelog_file" %}
3737
{% endif %}
3838

39+
# Common json module configuration
40+
{% include "environments/configs/freeradius/common/mods-available/json" %}
41+
3942
# Common stats module configuration
4043
{% include "environments/configs/freeradius/common/mods-available/stats" %}
4144

@@ -154,10 +157,30 @@ server load-generator {
154157
# Receive a Status-Server packet
155158
#
156159
recv Status-Server {
160+
uint32 Status-Server-Counter
161+
uint32 Access-Request-Counter
162+
uint32 Access-Accept-Counter
163+
uint32 Access-Reject-Counter
164+
string Test-Result
165+
string Test-Result-Message
166+
167+
# Initialization
168+
Status-Server-Counter := 0
169+
Access-Request-Counter := 0
170+
Access-Accept-Counter := 0
171+
Access-Reject-Counter := 0
172+
Test-Result := "FAIL"
173+
Test-Result-Message := "-"
174+
157175
# stats module required to have access to the Status-Server's global statistics
158176
stats
159177

160178
{%raw%}
179+
Status-Server-Counter := %{reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server || 0}
180+
Access-Request-Counter := %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request || 0}
181+
Access-Accept-Counter := %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept || 0}
182+
Access-Reject-Counter := %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Reject || 0}
183+
161184
%linelog_test_framework("loadgen-recv-status-server - INFO - reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server: %{reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server || 0}")
162185
%linelog_test_framework("loadgen-recv-status-server - INFO - reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request: %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request || 0}")
163186
%linelog_test_framework("loadgen-recv-status-server - INFO - reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept: %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept || 0}")
@@ -166,12 +189,19 @@ server load-generator {
166189
# The Stats Module documentation explicitly states: "When listed in a recv Status-Server section, it will add global server statistics to the packet,
167190
# hence the reason "reply.FreeRADIUS.Stats4" is used below.
168191
if ((reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept - reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server) != reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request) {
169-
%linelog_test_framework("loadgen-recv-status-server - ERROR - expected vs actual stat missmatch, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request}, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept}, reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server: %{reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server}")
192+
Test-Result := "FAIL"
193+
Test-Result-Message := "expected vs actual stat mismatch"
194+
%linelog_test_framework("loadgen-recv-status-server - ERROR - expected vs actual stat mismatch, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request}, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept}, reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server: %{reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server}")
170195
}
171196

172197
if (reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request == (reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept - reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server)) {
198+
Test-Result := "PASS"
199+
Test-Result-Message := "requests processed successfully"
173200
%linelog_test_framework("loadgen-recv-status-server - INFO - %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request} requests processed successfully, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Request}, reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept = %{reply.FreeRADIUS.Stats4.Packet-Counters.Access-Accept}, reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server = %{reply.FreeRADIUS.Stats4.Packet-Counters.Status-Server}")
174201
}
202+
203+
%linelog_test_framework("load-generator-status-server {\"Test-Result\": %{Test-Result}, \"Test-Result-Message\": %{Test-Result-Message}, \"Status-Server-Counter\": %{Status-Server-Counter}, \"Access-Request-Counter\": %{Access-Request-Counter}, \"Access-Accept-Counter\": %{Access-Accept-Counter}, \"Access-Reject-Counter\": %{Access-Reject-Counter}}")
204+
175205
{%endraw%}
176206
}
177207

0 commit comments

Comments
 (0)