From: Michael Tremer Date: Sat, 1 Jun 2019 12:51:28 +0000 (+0100) Subject: libpakfire: parser: Log time it takes for the parser to run X-Git-Tag: 0.9.28~1285^2~988 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=df8aac928918e0d1c2701fca0990a8dec6dd712c;p=pakfire.git libpakfire: parser: Log time it takes for the parser to run Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/parser/grammar.y b/src/libpakfire/parser/grammar.y index 2fecb26e2..d139c5b4a 100644 --- a/src/libpakfire/parser/grammar.y +++ b/src/libpakfire/parser/grammar.y @@ -25,6 +25,7 @@ %{ #include +#include #include #include @@ -245,6 +246,9 @@ int pakfire_parser_parse_data(PakfireParser parent, const char* data, size_t len DEBUG(pakfire, "Parsing the following data:\n%s\n", data); + // Save start time + clock_t t_start = clock(); + // Create a new sub-parser PakfireParser parser = pakfire_parser_create(pakfire, parent, NULL); @@ -261,6 +265,9 @@ int pakfire_parser_parse_data(PakfireParser parent, const char* data, size_t len parent = pakfire_parser_merge(parent, parser); } + // Save end time + clock_t t_end = clock(); + // Destroy the parser pakfire_parser_unref(parser); @@ -270,6 +277,10 @@ int pakfire_parser_parse_data(PakfireParser parent, const char* data, size_t len DEBUG(pakfire, "Status of the parser %p:\n%s\n", parent, dump); pakfire_free(dump); + // Log time we needed to parse data + DEBUG(pakfire, "Parser finished in %.4fms\n", + (double)(t_end - t_start) * 1000 / CLOCKS_PER_SEC); + // Cleanup pakfire_unref(pakfire);