NAME

Test::Parser::SysbenchFileIO - Perl module to parse output from Sysbench --test=fileio

SYNOPSIS

use Test::Parser::SysbenchFileIO;
my $parser = new Test::Parser::SysbenchFileIO;
$parser->parse($text)

printf(" Num of Threads:  %15s\n", $parser->print('num_threads'));
printf("File Open Flags:  %15s\n", $parser->print('file_open_flags'));
printf("Number of Files:  %15s\n", $parser->print('num_files'));
printf("      File Size:  %15s\n", $parser->print('file_size'));
printf("Total File Size:  %15s\n", $parser->print('total_file_size'));
printf("     Block Size:  %15s\n", $parser->print('block_size'));
printf(" Num Random Req:  %15s\n", $parser->print('num_random_req'));
printf("      R/W Ratio:  %15s\n", $parser->print('rw_ratio'));
printf("   FSYNC Status:  %15s\n", $parser->fsync('status'));
printf("     FSYNC Freq:  %15s\n", $parser->fsync('freq'));
printf("      FSYNC End:  %15s\n", $parser->fsync('end'));
printf("        IO Mode:  %15s\n", $parser->print('io_mode'));
printf("     Which Test:  %15s\n", $parser->print('test_run'));
printf("      Perf Read:  %15s\n", $parser->ops('reads'));
printf("     Perf Write:  %15s\n", $parser->ops('writes'));
printf("     Perf Other:  %15s\n", $parser->ops('other'));
printf("     Perf Total:  %15s\n", $parser->ops('total'));
printf("      Size Read:  %15s\n", $parser->ops('read'));
printf("   Size Written:  %15s\n", $parser->ops('written'));
printf("    Total trans:  %15s\n", $parser->ops('trans_total'));
printf("     Trans Rate:  %15s\n", $parser->ops('trans_rate'));
printf("   Request Exec:  %15s\n", $parser->ops('req_rate'));
printf("     Total Time:  %15s\n", $parser->totals('time'));
printf("   Total Events:  %15s\n", $parser->totals('events'));
printf("     Total Exec:  %15s\n", $parser->totals('exec'));
printf("         PR Min:  %15s\n", $parser->per_request('min'));
printf("         PR Avg:  %15s\n", $parser->per_request('avg'));
printf("         PR Max:  %15s\n", $parser->per_request('max'));
printf("   95th Percent:  %15s\n", $parser->per_request('95'));
printf("      Event Avg:  %15s\n", $parser->eventfair('avg'));
printf("   Event StdDev:  %15s\n", $parser->eventfair('stddev'));
printf("       Exec Avg:  %15s\n", $parser->execfair('avg'));
printf("    Exec StdDev:  %15s\n", $parser->execfair('stddev'));

Additional information is available from the subroutines listed below and from the Test::Parser baseclass.

DESCRIPTION

This module provides a way to parse and neatly display information gained from the Sysbench FileIO test. This module will parse the output given by this command and commands similar to it: `sysbench --test=fileio > fileio.output` The fileio.output contains the necessary information that SysbenchFileIO is able to parse.

FUNCTIONS

Also see Test::Parser for functions available from the base class.

new()

Purpose: Create a new Test::Parser::SysbenchFileIO instance
Input: None
Output: SysbenchFileIO object

data()

Purpose: Return a hash representation of the Sysbench data
Input: None
Output: SysbenchFileIO data

parse_line()

Purpose: Parse Sysbench --test=fileio log files.  This method override's the default parse_line() of Test::Parser
Input: String (one line of log file)
Output: 1

print()

Purpose: Print certain stats about the test
Input: 'num_threads', 'file_open_flags', 'num_files', 'file_size', 'file_size_units', 'total_file_size', 'total_file_size_units', 'block_size', 'block_size_units', 'num_random_req', 'rw_ratio', 'io_mode', 'test_run'
Output: String

summary()

Purpose: Return Summary information for the Sysbench test
Input: 'threads', 'maxprime'
Output: The number of threads OR the prime number calculated OR undef

totals()

Purpose: Return Totals information for the Sysbench test
Input: 'time', 'time_units', 'events', 'exec'
Output: String

per_request()

Purpose: Return Per-Request information for the Sysbench test
Input: 'min', 'min_units', 'avg', 'avg_units', 'max', 'max_units', '95', '95_units'
Output: String

eventfair()

Purpose: Return the Thread Fairness information for the Sysbench test
Input: 'avg', 'stddev'
Output: String

execfair()

Purpose: Return the Thread Fairness information for the Sysbench test
Input: 'avg', 'stddev'
Output: String

fsync()

Purpose: Returns whether or not fsync was enabled, and what options were specified if it was enabled
Input: 'status', 'freq', 'end'
Output: String

ops()

Purpose: Return info about the operations that were performed for the test.
Input: 'reads', 'writes', 'other', 'total', 'read', 'read_units', 'written', 'written_units', 'trans_total', 'trans_total_units', 'trans_rate', 'trans_rate_units', 'req_rate'
Output: String

to_xml()

Purpose: Export the SysbenchFileIO test results in TRPI Extended format
Input: NA
Output: XML File

AUTHOR

John Daiker <jdaiker@osdl.org>

COPYRIGHT

Copyright (C) 2006 John Daiker & Open Source Development Labs, Inc. All Rights Reserved.

This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Test::Parser

1 POD Error

The following errors were encountered while parsing the POD:

Around line 610:

'=end' without a target?