mirror of
git://git.code.sf.net/p/dhcpd-pools/code
synced 2025-12-17 16:26:59 +00:00
output: include earlier missing data to json output
This commit adds all the data that is in text output to json output. Signed-off-by: Sami Kerola <kerolasa@iki.fi>
This commit is contained in:
parent
344ed2900d
commit
e079cc16e0
2 changed files with 40 additions and 10 deletions
42
src/output.c
42
src/output.c
|
|
@ -418,8 +418,8 @@ static int output_json(const int print_mac_addreses)
|
|||
{
|
||||
unsigned int i = 0;
|
||||
struct range_t *range_p;
|
||||
double range_size;
|
||||
struct shared_network_t *shared_p;
|
||||
struct output_helper_t oh;
|
||||
int ret;
|
||||
FILE *outfile;
|
||||
unsigned int sep;
|
||||
|
|
@ -434,7 +434,6 @@ static int output_json(const int print_mac_addreses)
|
|||
}
|
||||
|
||||
range_p = ranges;
|
||||
range_size = get_range_size(range_p);
|
||||
shared_p = shared_networks;
|
||||
sep = 0;
|
||||
|
||||
|
|
@ -470,6 +469,7 @@ static int output_json(const int print_mac_addreses)
|
|||
}
|
||||
fprintf(outfile, " \"subnets\": [\n");
|
||||
for (i = 0; i < num_ranges; i++) {
|
||||
range_output_helper(&oh, range_p);
|
||||
fprintf(outfile, " ");
|
||||
fprintf(outfile, "{ ");
|
||||
if (range_p->shared_net) {
|
||||
|
|
@ -481,12 +481,20 @@ static int output_json(const int print_mac_addreses)
|
|||
|
||||
fprintf(outfile, "\"range\":\"%s", ntop_ipaddr(&range_p->first_ip));
|
||||
fprintf(outfile, " - %s\", ", ntop_ipaddr(&range_p->last_ip));
|
||||
fprintf(outfile, "\"defined\":%g, ", range_size);
|
||||
fprintf(outfile, "\"defined\":%g, ", oh.range_size);
|
||||
fprintf(outfile, "\"used\":%g, ", range_p->count);
|
||||
fprintf(outfile, "\"touched\":%g, ", range_p->touched);
|
||||
fprintf(outfile, "\"free\":%g ", range_size - range_p->count);
|
||||
fprintf(outfile, "\"free\":%g, ", oh.range_size - range_p->count);
|
||||
fprintf(outfile, "\"percent\":%g, ", oh.percent);
|
||||
fprintf(outfile, "\"touch_count\":%g, ", oh.tc);
|
||||
fprintf(outfile, "\"touch_percent\":%g, ", oh.tcp);
|
||||
if (config.backups_found == 1) {
|
||||
fprintf(outfile, "\"backup_count\":%g, ", range_p->backups);
|
||||
fprintf(outfile, "\"backup_percent\":%g, ", oh.bup);
|
||||
}
|
||||
fprintf(outfile, "\"status\":%d ", oh.status);
|
||||
|
||||
range_p++;
|
||||
range_size = get_range_size(range_p);
|
||||
if (i + 1 < num_ranges)
|
||||
fprintf(outfile, "},\n");
|
||||
else
|
||||
|
|
@ -502,6 +510,7 @@ static int output_json(const int print_mac_addreses)
|
|||
}
|
||||
fprintf(outfile, " \"shared-networks\": [\n");
|
||||
for (i = 0; i < num_shared_networks; i++) {
|
||||
shnet_output_helper(&oh, shared_p);
|
||||
fprintf(outfile, " ");
|
||||
shared_p++;
|
||||
fprintf(outfile, "{ ");
|
||||
|
|
@ -509,7 +518,15 @@ static int output_json(const int print_mac_addreses)
|
|||
fprintf(outfile, "\"defined\":%g, ", shared_p->available);
|
||||
fprintf(outfile, "\"used\":%g, ", shared_p->used);
|
||||
fprintf(outfile, "\"touched\":%g, ", shared_p->touched);
|
||||
fprintf(outfile, "\"free\":%g ", shared_p->available - shared_p->used);
|
||||
fprintf(outfile, "\"free\":%g, ", shared_p->available - shared_p->used);
|
||||
fprintf(outfile, "\"percent\":%g, ", oh.percent);
|
||||
fprintf(outfile, "\"touch_count\":%g, ", oh.tc);
|
||||
fprintf(outfile, "\"touch_percent\":%g, ", oh.tcp);
|
||||
if (config.backups_found == 1) {
|
||||
fprintf(outfile, "\"backup_count\":%g, ", shared_p->backups);
|
||||
fprintf(outfile, "\"backup_percent\":%g, ", oh.bup);
|
||||
}
|
||||
fprintf(outfile, "\"status\":%d ", oh.status);
|
||||
if (i + 1 < num_shared_networks)
|
||||
fprintf(outfile, "},\n");
|
||||
else
|
||||
|
|
@ -520,6 +537,7 @@ static int output_json(const int print_mac_addreses)
|
|||
}
|
||||
|
||||
if (config.header_limit & A_BIT) {
|
||||
shnet_output_helper(&oh, shared_networks);
|
||||
if (sep) {
|
||||
fprintf(outfile, ",\n");
|
||||
}
|
||||
|
|
@ -528,8 +546,16 @@ static int output_json(const int print_mac_addreses)
|
|||
fprintf(outfile, " \"defined\":%g,\n", shared_networks->available);
|
||||
fprintf(outfile, " \"used\":%g,\n", shared_networks->used);
|
||||
fprintf(outfile, " \"touched\":%g,\n", shared_networks->touched);
|
||||
fprintf(outfile, " \"free\":%g\n",
|
||||
shared_networks->available - shared_networks->used);
|
||||
fprintf(outfile, " \"free\":%g,\n",
|
||||
shared_networks->available - shared_networks->used);
|
||||
fprintf(outfile, " \"percent\":%g,\n", oh.percent);
|
||||
fprintf(outfile, " \"touch_count\":%g,\n", oh.tc);
|
||||
fprintf(outfile, " \"touch_percent\":%g,\n", oh.tcp);
|
||||
if (config.backups_found == 1) {
|
||||
fprintf(outfile, " \"backup_count\":%g,\n", shared_p->backups);
|
||||
fprintf(outfile, " \"backup_percent\":%g,\n", oh.bup);
|
||||
}
|
||||
fprintf(outfile, " \"status\":%d\n", oh.status);
|
||||
fprintf(outfile, " }"); /* end of summary */
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
{ "ip":"10.0.0.5", "macaddress":"00:00:00:00:00:00" }
|
||||
],
|
||||
"subnets": [
|
||||
{ "location":"All networks", "range":"10.0.0.1 - 10.0.0.10", "defined":10, "used":1, "touched":0, "free":9 }
|
||||
{ "location":"All networks", "range":"10.0.0.1 - 10.0.0.10", "defined":10, "used":1, "touched":0, "free":9, "percent":10, "touch_count":1, "touch_percent":10, "status":0 }
|
||||
],
|
||||
"shared-networks": [
|
||||
],
|
||||
|
|
@ -12,6 +12,10 @@
|
|||
"defined":10,
|
||||
"used":1,
|
||||
"touched":0,
|
||||
"free":9
|
||||
"free":9,
|
||||
"percent":10,
|
||||
"touch_count":1,
|
||||
"touch_percent":10,
|
||||
"status":0
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue