当前位置: 首页>>代码示例>>Python>>正文


Python RemoteHelper.fio方法代码示例

本文整理汇总了Python中perfrunner.helpers.remote.RemoteHelper.fio方法的典型用法代码示例。如果您正苦于以下问题:Python RemoteHelper.fio方法的具体用法?Python RemoteHelper.fio怎么用?Python RemoteHelper.fio使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在perfrunner.helpers.remote.RemoteHelper的用法示例。


在下文中一共展示了RemoteHelper.fio方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: FIOTest

# 需要导入模块: from perfrunner.helpers.remote import RemoteHelper [as 别名]
# 或者: from perfrunner.helpers.remote.RemoteHelper import fio [as 别名]
class FIOTest(PerfTest):

    TRACKER = 'fio.sc.couchbase.com'

    TEMPLATE = {
        'group': '{}, random mixed reads and writes, IOPS',
        'metric': None,
        'value': None,
    }

    def __init__(self, cluster_spec, test_config, verbose):
        self.cluster_spec = cluster_spec
        self.test_config = test_config
        self.remote = RemoteHelper(cluster_spec, test_config, verbose)

    def __exit__(self, *args, **kwargs):
        pass

    @staticmethod
    def _parse(results):
        """Terse output parsing is based on the following guide:

            https://github.com/axboe/fio/blob/master/HOWTO
        """
        stats = defaultdict(int)
        for host, output in results.items():
            for job in output.split():
                stats[host] += int(job.split(';')[7])  # reads
                stats[host] += int(job.split(';')[48])  # writes
        return stats

    def _post(self, data):
        data = pretty_dict(data)
        logger.info('Posting: {}'.format(data))
        requests.post('http://{}/api/v1/benchmarks'.format(self.TRACKER),
                      data=data)

    def _report_kpi(self, stats):
        for host, iops in stats.items():
            data = self.TEMPLATE.copy()
            data['group'] = data['group'].format(self.cluster_spec.name.title())
            data['metric'] = host
            data['value'] = iops

            self._post(data)

    def run(self):
        stats = self.remote.fio(self.test_config.fio['config'])
        self._report_kpi(self._parse(stats))
开发者ID:mahesh152,项目名称:perfrunner,代码行数:51,代码来源:fio.py


注:本文中的perfrunner.helpers.remote.RemoteHelper.fio方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。