Make some internal values show up nicer in --output json

This commit is contained in:
Brian Fraser
2013-03-05 02:54:48 -03:00
4 changed files with 28 additions and 130 deletions

View File

@@ -7541,8 +7541,8 @@ use constant PTDEBUG => $ENV{PTDEBUG} || 0;
my $have_json = eval { require JSON };
our $pretty_json = undef;
our $sorted_json = undef;
our $pretty_json = 0;
our $sorted_json = 0;
extends qw(QueryReportFormatter);
@@ -7588,6 +7588,8 @@ override query_report => sub {
my $worst = $args{worst};
my @attribs = @{$ea->get_attributes()};
my %string_args = map { $_ => 1 } qw( db host arg user bytes pos_in_log );
my @queries;
foreach my $worst_info ( @$worst ) {
@@ -7628,6 +7630,9 @@ override query_report => sub {
$class{ts_min} = $ts->{min};
$class{ts_max} = $ts->{max};
}
elsif ( $string_args{$attrib} ) {
$metrics{$attrib} = { value => $metrics{$attrib}{max} };
}
elsif ( ($ea->{type_for}->{$attrib} || '') eq 'num' ) {
for my $value ( values %{$metrics{$attrib}} ) {
next unless $value;

View File

@@ -9,8 +9,8 @@ use constant PTDEBUG => $ENV{PTDEBUG} || 0;
my $have_json = eval { require JSON };
our $pretty_json = undef;
our $sorted_json = undef;
our $pretty_json = 0;
our $sorted_json = 0;
extends qw(QueryReportFormatter);
@@ -56,6 +56,8 @@ override query_report => sub {
my $worst = $args{worst};
my @attribs = @{$ea->get_attributes()};
my %string_args = map { $_ => 1 } qw( db host arg user bytes pos_in_log );
my @queries;
foreach my $worst_info ( @$worst ) {
@@ -96,6 +98,9 @@ override query_report => sub {
$class{ts_min} = $ts->{min};
$class{ts_max} = $ts->{max};
}
elsif ( $string_args{$attrib} ) {
$metrics{$attrib} = { value => $metrics{$attrib}{max} };
}
elsif ( ($ea->{type_for}->{$attrib} || '') eq 'num' ) {
# Avoid scientific notation in the metrics by forcing it to use
# six decimal places.

View File

@@ -135,59 +135,19 @@
"sum" : 0
},
"bytes" : {
"avg" : "129.000000",
"cnt" : "1.000000",
"max" : "129.000000",
"median" : "129.000000",
"min" : "129.000000",
"pct" : "0.12",
"pct_95" : "129.000000",
"stddev" : 0,
"sum" : "129.000000"
"value" : 129
},
"db" : {
"avg" : 0,
"cnt" : 1,
"max" : "db1",
"median" : 0,
"min" : "db1",
"pct" : 0.142857142857143,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : "db1"
},
"host" : {
"avg" : 0,
"cnt" : 1,
"max" : "",
"median" : 0,
"min" : "",
"pct" : 0.125,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : ""
},
"pos_in_log" : {
"avg" : "338.000000",
"cnt" : "1.000000",
"max" : "338.000000",
"median" : "338.000000",
"min" : "338.000000",
"pct" : "0.12",
"pct_95" : "338.000000",
"stddev" : 0,
"sum" : "338.000000"
"value" : 338
},
"user" : {
"avg" : 0,
"cnt" : 1,
"max" : "[SQL_SLAVE]",
"median" : 0,
"min" : "[SQL_SLAVE]",
"pct" : 0.125,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : "[SQL_SLAVE]"
}
},
"class" : {

View File

@@ -69,37 +69,13 @@
"sum" : 0
},
"bytes" : {
"avg" : "35.000000",
"cnt" : "1.000000",
"max" : "35.000000",
"median" : "35.000000",
"min" : "35.000000",
"pct" : "0.33",
"pct_95" : "35.000000",
"stddev" : 0,
"sum" : "35.000000"
"value" : 35
},
"host" : {
"avg" : 0,
"cnt" : 1,
"max" : "127.0.0.1",
"median" : 0,
"min" : "127.0.0.1",
"pct" : 0.333333333333333,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : "127.0.0.1"
},
"pos_in_log" : {
"avg" : 0,
"cnt" : "1.000000",
"max" : 0,
"median" : 0,
"min" : 0,
"pct" : "0.33",
"pct_95" : 0,
"stddev" : 0,
"sum" : 0
"value" : 0
}
},
"class" : {
@@ -180,37 +156,13 @@
"sum" : 0
},
"bytes" : {
"avg" : "37.000000",
"cnt" : "1.000000",
"max" : "37.000000",
"median" : "37.000000",
"min" : "37.000000",
"pct" : "0.33",
"pct_95" : "37.000000",
"stddev" : 0,
"sum" : "37.000000"
"value" : 37
},
"host" : {
"avg" : 0,
"cnt" : 1,
"max" : "127.0.0.1",
"median" : 0,
"min" : "127.0.0.1",
"pct" : 0.333333333333333,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : "127.0.0.1"
},
"pos_in_log" : {
"avg" : "1106.000000",
"cnt" : "1.000000",
"max" : "1106.000000",
"median" : "1106.000000",
"min" : "1106.000000",
"pct" : "0.33",
"pct_95" : "1106.000000",
"stddev" : 0,
"sum" : "1106.000000"
"value" : 1106
}
},
"class" : {
@@ -280,37 +232,13 @@
"sum" : 0
},
"bytes" : {
"avg" : "27.000000",
"cnt" : "1.000000",
"max" : "27.000000",
"median" : "27.000000",
"min" : "27.000000",
"pct" : "0.33",
"pct_95" : "27.000000",
"stddev" : 0,
"sum" : "27.000000"
"value" : 27
},
"host" : {
"avg" : 0,
"cnt" : 1,
"max" : "127.0.0.1",
"median" : 0,
"min" : "127.0.0.1",
"pct" : 0.333333333333333,
"pct_95" : 0,
"stddev" : 0,
"sum" : null
"value" : "127.0.0.1"
},
"pos_in_log" : {
"avg" : "1850.000000",
"cnt" : "1.000000",
"max" : "1850.000000",
"median" : "1850.000000",
"min" : "1850.000000",
"pct" : "0.33",
"pct_95" : "1850.000000",
"stddev" : 0,
"sum" : "1850.000000"
"value" : 1850
}
},
"class" : {