static void fio_client_json_init(void)
{
- if (output_format != FIO_OUTPUT_JSON)
+ if (!(output_format & FIO_OUTPUT_JSON))
return;
root = json_create_object();
json_object_add_value_string(root, "fio version", fio_version_string);
static void fio_client_json_fini(void)
{
- if (output_format != FIO_OUTPUT_JSON)
+ if (!(output_format & FIO_OUTPUT_JSON))
return;
- json_print_object(root);
+ json_print_object(root, NULL);
log_info("\n");
json_free_object(root);
root = NULL;
struct cmd_ts_pdu *p = (struct cmd_ts_pdu *) cmd->payload;
struct json_object *tsobj;
- tsobj = show_thread_status(&p->ts, &p->rs);
+ tsobj = show_thread_status(&p->ts, &p->rs, NULL);
client->did_stat = 1;
if (tsobj) {
json_object_add_client_info(tsobj, client);
if (sum_stat_clients <= 1)
return;
- sum_thread_stats(&client_ts, &p->ts, sum_stat_nr);
+ sum_thread_stats(&client_ts, &p->ts, sum_stat_nr == 1);
sum_group_stats(&client_gs, &p->rs);
client_ts.members++;
if (++sum_stat_nr == sum_stat_clients) {
strcpy(client_ts.name, "All clients");
- tsobj = show_thread_status(&client_ts, &client_gs);
+ tsobj = show_thread_status(&client_ts, &client_gs, NULL);
if (tsobj) {
json_object_add_client_info(tsobj, client);
json_array_add_value_object(clients_array, tsobj);
{
struct group_run_stats *gs = (struct group_run_stats *) cmd->payload;
- show_group_stats(gs);
+ show_group_stats(gs, NULL);
}
static void handle_text(struct fio_client *client, struct fio_net_cmd *cmd)
log_info("\nDisk stats (read/write):\n");
}
- if (output_format == FIO_OUTPUT_JSON) {
+ if (output_format & FIO_OUTPUT_JSON) {
struct json_object *duobj;
json_array_add_disk_util(&du->dus, &du->agg, du_array);
duobj = json_array_last_value_object(du_array);
json_object_add_client_info(duobj, client);
- } else
- print_disk_util(&du->dus, &du->agg, output_format == FIO_OUTPUT_TERSE);
+ }
+ if (output_format & FIO_OUTPUT_TERSE)
+ print_disk_util(&du->dus, &du->agg, 1, NULL);
+ if (output_format & FIO_OUTPUT_NORMAL)
+ print_disk_util(&du->dus, &du->agg, 0, NULL);
}
static void convert_jobs_eta(struct jobs_eta *je)