#!/usr/bin/env python import sys, os from optparse import OptionParser from hiprofile import Report, Connection, write_report default_thresholds = { 'binary': '5%', 'symbol': '20', } default_outdir = 'output' def main(args): parser = OptionParser() parser.add_option('-r', '--remote-host', dest = 'host', help = 'grab oprofile data from HOST', metavar = 'HOST') parser.add_option('-o', '--output-dir', dest = 'outdir', help = 'create output in directory DIR', metavar = 'DIR', default = default_outdir) parser.add_option('--opreport', dest = 'opreport', default = 'opreport', help = 'use opreport binary at PATH', metavar = 'PATH') parser.add_option('--opannotate', dest = 'opannotate', default = 'opannotate', help = 'use opannotate binary at PATH', metavar = 'PATH') (options, args) = parser.parse_args() conn = Connection(options.host) report = Report.extract(conn, options) report.threshold(default_thresholds) report.annotate(conn, options) write_report(report, options.outdir) if __name__ == '__main__': sys.exit(main(sys.argv))