perfmon_instance_t *in;
u8 *s = 0;
int n_row = 0;
+ u8 raw = 0;
if (b == 0)
return clib_error_return (0, "no budle selected");
+ while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (input, "raw"))
+ raw = 1;
+ else
+ break;
+ }
+
n_instances = vec_len (it->instances);
vec_validate (readings, n_instances - 1);
char **hdr = b->column_headers;
while (hdr[0])
table_format_cell (t, -1, n_row++, "%s", hdr++[0]);
+
+ if (b->raw_column_headers && raw)
+ {
+ hdr = b->raw_column_headers;
+ while (hdr[0])
+ table_format_cell (t, -1, n_row++, "%s", hdr++[0]);
+ }
}
int col = 0;
vlib_cli_output (vm, "%U\n", format_table, t);
table_free (t);
+ if (raw)
+ vlib_cli_output (vm, "Sample time is %.4f seconds \n", pm->sample_time);
+
if (b->footer)
vlib_cli_output (vm, "\n%s\n", b->footer);
VLIB_CLI_COMMAND (show_perfmon_stats_command, static) = {
.path = "show perfmon statistics",
- .short_help = "show perfmon statistics",
+ .short_help = "show perfmon statistics [raw]",
.function = show_perfmon_stats_command_fn,
.is_mp_safe = 1,
};
perfmon_bundle_init_fn_t *init_fn;
char **column_headers;
+ char **raw_column_headers;
format_function_t *format_fn;
/* do not set manually */
uword *source_by_name;
perfmon_bundle_t *active_bundle;
int is_running;
+ f64 sample_time;
int *group_fds;
int *fds_to_close;
perfmon_instance_type_t *default_instance_type;