#!/usr/bin/env python import sys, os from optparse import OptionParser from django.conf import settings from hiprofile import Report, Connection, write_report resourcedir = os.path.join(os.path.dirname(__file__), '..', 'share', 'hiprofile') 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) (options, args) = parser.parse_args() # set up django template engine settings.configure(TEMPLATE_LOADERS = ('django.template.loaders.filesystem.load_template_source',), TEMPLATE_DIRS = (resourcedir,)) conn = Connection(options.host) report = Report.extract(conn) report.threshold(default_thresholds) report.annotate(conn) write_report(report, resourcedir, options.outdir) if __name__ == '__main__': sys.exit(main(sys.argv))