logswan

Fast Web log analyzer using probabilistic data structures
Log | Files | Refs | README | LICENSE

commit a7ea43aab54b48fc0f1bbf03b84140b3bc95cfb0
parent a36f4b8390cfb689412e769590115e17be361242
Author: Frederic Cambus <fcambus@users.sourceforge.net>
Date:   Sat, 27 Jun 2015 00:07:10 +0200

Changing hourly distribution output format and getting rid of the hours strings array

Diffstat:
Msrc/output.c | 13++++---------
1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/src/output.c b/src/output.c @@ -20,21 +20,17 @@ void output(Results results) { json_t *jsonObject = json_object(); json_t *hitsObject = json_object(); json_t *countriesObject = json_object(); - json_t *hoursObject = json_object(); - + json_t *hoursArray = json_array(); + for (int loop=0; loop<255; loop++) { if (results.countries[loop] != 0) { json_object_set_new(countriesObject, GeoIP_code_by_id(loop), json_integer(results.countries[loop])); } } - char *hoursString[] = { - "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23" - }; - for (int loop=0; loop<24; loop++) { if (results.hours[loop] != 0) { - json_object_set_new(hoursObject, hoursString[loop], json_integer(results.hours[loop])); + json_array_append_new(hoursArray, json_pack("{s:i, s:i}", "data", loop, "hits", results.hours[loop])); } } @@ -42,8 +38,7 @@ void output(Results results) { json_object_set_new(hitsObject, "ipv6", json_integer(results.hitsIPv6)); json_object_set_new(hitsObject, "total", json_integer(results.hits)); json_object_set_new(hitsObject, "countries", countriesObject); - json_object_set_new(hitsObject, "hours", hoursObject); - + json_object_set_new(hitsObject, "hours", hoursArray); json_object_set_new(jsonObject, "date", json_string(results.timeStamp)); json_object_set_new(jsonObject, "file_size", json_integer(results.fileSize)); json_object_set_new(jsonObject, "processed_lines", json_integer(results.processedLines));