openstack_cli_core/
lib.rs1use comfy_table::ContentArrangement;
17use comfy_table::Table;
18use comfy_table::presets::UTF8_FULL_CONDENSED;
19
20pub mod cli;
21pub mod common;
22pub mod config;
23pub mod error;
24pub mod output;
25pub mod tracing_stats;
26
27use crate::tracing_stats::HttpRequestStats;
28
29pub fn build_http_requests_timing_table(data: &HttpRequestStats) -> Table {
31 let mut table = Table::new();
32 table
33 .load_preset(UTF8_FULL_CONDENSED)
34 .set_content_arrangement(ContentArrangement::Dynamic)
35 .set_header(Vec::from(["Url", "Method", "Duration (ms)"]));
36
37 let mut total_http_duration: u128 = 0;
38 for rec in data.summarize_by_url_method() {
39 total_http_duration += rec.2;
40 table.add_row(vec![rec.0, rec.1, rec.2.to_string()]);
41 }
42 table.add_row(vec!["Total", "", &total_http_duration.to_string()]);
43 table
44}