rebuild statistic-get-all response
At this point this is what kea is sending back:
{
"command": "statistic-get-all",
"arguments": {
"declined-addresses": [ [ 0, "2019-07-30 10:04:28.386733" ] ],
"reclaimed-declined-addresses": [ [ 0, "2019-07-30 10:04:28.386735" ] ],
"reclaimed-leases": [ [ 0, "2019-07-30 10:04:28.386736" ] ],
"subnet[1].assigned-addresses": [ [ 0, "2019-07-30 10:04:28.386740" ] ],
"subnet[1].declined-addresses": [ [ 0, "2019-07-30 10:04:28.386743" ] ],
"subnet[1].reclaimed-declined-addresses": [ [ 0, "2019-07-30 10:04:28.386745" ] ],
"subnet[1].reclaimed-leases": [ [ 0, "2019-07-30 10:04:28.386747" ] ],
"subnet[1].total-addresses": [ [ 200, "2019-07-30 10:04:28.386719" ] ]
},
"result": 0
}
I want to focus on a prat with subnets, which is really hard to parse. Biggest issue is that subnet id is in key name, not as value. And this is completely flat.
I am proposing to return statistics like that:
{
"command": "statistic-get-all",
"arguments": {
"declined-addresses": [ [ 0, "2019-07-30 10:04:28.386733" ] ],
"reclaimed-declined-addresses": [ [ 0, "2019-07-30 10:04:28.386735" ] ],
"reclaimed-leases": [ [ 0, "2019-07-30 10:04:28.386736" ] ],
"subnets": { [
"subnet-id": 1,
"assigned-addresses": [ [ 0, "2019-07-30 10:04:28.386740" ] ],
"declined-addresses": [ [ 0, "2019-07-30 10:04:28.386743" ] ],
"reclaimed-declined-addresses": [ [ 0, "2019-07-30 10:04:28.386745" ] ],
"reclaimed-leases": [ [ 0, "2019-07-30 10:04:28.386747" ] ],
"total-addresses": [ [ 200, "2019-07-30 10:04:28.386719" ] ]
],
[
"subnet-id": 2,
"assigned-addresses": [ [ 0, "2019-07-30 10:04:28.386740" ] ],
"declined-addresses": [ [ 0, "2019-07-30 10:04:28.386743" ] ],
"reclaimed-declined-addresses": [ [ 0, "2019-07-30 10:04:28.386745" ] ],
"reclaimed-leases": [ [ 0, "2019-07-30 10:04:28.386747" ] ],
"total-addresses": [ [ 200, "2019-07-30 10:04:28.386719" ] ]
]
}
},
"result": 0
}
I came up on this issue while working recently with performance testing of a setup with ~500 subnets.