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
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 610:
'=end' without a target?