Next: , Previous: Tabular Reports, Up: Getstats



6.2 Converting Results into CSV Files

After parsing the results file, Getstats runs several default transformations as described in Default Function Library. These transformations essentially combine the results from several tests, and produce the derived quantities (e.g., Wait time). If we want to see these raw values we can use the --dump transform. The following output is produced by getstats --dump ext2:1.res:

     epoch elapsed user  sys   io    cpu
     1     6.138   1.700 2.720 1.718 72.007
     2     6.026   1.820 2.640 1.566 74.015
     3     5.855   1.590 2.800 1.465 74.981
     4     5.983   1.680 2.750 1.553 74.045
     5     6.063   1.730 2.700 1.633 73.071
     6     6.180   1.680 2.790 1.710 72.331
     7     6.043   1.510 2.880 1.653 72.645
     8     6.089   1.680 2.770 1.639 73.086
     9     6.063   1.630 2.820 1.613 73.396
     10    6.113   1.730 2.710 1.673 72.637
     ext2:1.res: High z-score of 2.21853230276562 for elapsed in epoch 3.
     ext2:1.res: High z-score of 2.03783855068 for io in epoch 3.
     ext2:1.res
     NAME    COUNT MEAN   MEDIAN LOW    HIGH   MIN    MAX    SDEV% HW%
     Elapsed 10    6.055  6.063  5.991  6.120  5.855  6.180  1.491 1.067
     System  10    2.758  2.760  2.709  2.807  2.640  2.880  2.499 1.788
     User    10    1.675  1.680  1.615  1.735  1.510  1.820  5.044 3.609
     Wait    10    1.622  1.636  1.567  1.677  1.465  1.718  4.759 3.404
     CPU%    10    73.221 73.079 72.572 73.871 72.007 74.981 1.240 0.887

As we can see the tabular report is still printed. This is because the standard transforms are being executed before and after the --dump transformation. To solve this problem, we can simply exit after the dump by adding --eval "exit(0);". The complete command getstats --dump --eval "exit(0);" ext2:1.res produces:

     epoch elapsed user  sys   io    cpu
     1     6.138   1.700 2.720 1.718 72.007
     2     6.026   1.820 2.640 1.566 74.015
     3     5.855   1.590 2.800 1.465 74.981
     4     5.983   1.680 2.750 1.553 74.045
     5     6.063   1.730 2.700 1.633 73.071
     6     6.180   1.680 2.790 1.710 72.331
     7     6.043   1.510 2.880 1.653 72.645
     8     6.089   1.680 2.770 1.639 73.086
     9     6.063   1.630 2.820 1.613 73.396
     10    6.113   1.730 2.710 1.673 72.637

This output, however, is post processed. To produce raw output, we need to disable the standard transforms by passing --nostdtransforms. The command getstats --nostdtransforms --dump ext2:1.res produces the following table (note that we do not need to suppress the default tabular report, as --nostdtransforms already suppresses it):

     thread epoch command                             status elapsed user  sys
     1      1     postmark /tmp/postmark_config-30126 0      6.138   1.700 2.720
     1      2     postmark /tmp/postmark_config-30312 0      6.026   1.820 2.640
     1      3     postmark /tmp/postmark_config-30498 0      5.855   1.590 2.800
     1      4     postmark /tmp/postmark_config-30684 0      5.983   1.680 2.750
     1      5     postmark /tmp/postmark_config-30870 0      6.063   1.730 2.700
     1      6     postmark /tmp/postmark_config-31056 0      6.180   1.680 2.790
     1      7     postmark /tmp/postmark_config-31242 0      6.043   1.510 2.880
     1      8     postmark /tmp/postmark_config-31428 0      6.089   1.680 2.770
     1      9     postmark /tmp/postmark_config-31614 0      6.063   1.630 2.820
     1      10    postmark /tmp/postmark_config-31800 0      6.113   1.730 2.710

To produce CSV files, which are suitable for use with other programs, you can replace --dump with --csv. For example, getstats --nostdtransforms --csv ext2:1.res produces

     "thread","epoch","command","status","elapsed","user","sys"
     "1","1","postmark /tmp/postmark_config-30126","0","6.138273","1.700000","2.720000"
     "1","2","postmark /tmp/postmark_config-30312","0","6.025781","1.820000","2.640000"
     "1","3","postmark /tmp/postmark_config-30498","0","5.854844","1.590000","2.800000"
     "1","4","postmark /tmp/postmark_config-30684","0","5.982848","1.680000","2.750000"
     "1","5","postmark /tmp/postmark_config-30870","0","6.062588","1.730000","2.700000"
     "1","6","postmark /tmp/postmark_config-31056","0","6.179898","1.680000","2.790000"
     "1","7","postmark /tmp/postmark_config-31242","0","6.043082","1.510000","2.880000"
     "1","8","postmark /tmp/postmark_config-31428","0","6.088717","1.680000","2.770000"
     "1","9","postmark /tmp/postmark_config-31614","0","6.062965","1.630000","2.820000"
     "1","10","postmark /tmp/postmark_config-31800","0","6.112608","1.730000","2.710000"