|
|
|
@ -37,15 +37,23 @@ namespace metrics |
|
|
|
|
inline void to_json(json& j, const job& p) |
|
|
|
|
{ |
|
|
|
|
auto total_trip_time = 0.; |
|
|
|
|
auto summation_time = 0.f; |
|
|
|
|
for(auto&& client : p.client_metrics) |
|
|
|
|
{ |
|
|
|
|
summation_time += client.trip_time; |
|
|
|
|
#ifdef THREADED |
|
|
|
|
total_trip_time = client.trip_time > total_trip_time ? client.trip_time : total_trip_time; |
|
|
|
|
#else |
|
|
|
|
total_trip_time += client.trip_time; |
|
|
|
|
j = json{ |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
j = json{ |
|
|
|
|
{ "operation", p.operation }, |
|
|
|
|
{ "total_trip_time", total_trip_time }, |
|
|
|
|
{ "average_trip_time",total_trip_time / p.client_metrics.size() }, |
|
|
|
|
{ "average_trip_time",summation_time / p.client_metrics.size() }, |
|
|
|
|
{ "client_metrics", p.client_metrics} |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
inline std::vector<job> job_metrics{}; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|