python里histogram模块_Python hdrhistogram包_程序模块 - PyPI - Python中文网

python api

此库的用户通常可以扮演两个角色(通常都是):将值记录到一个或多个直方图中(直方图设置)

分析并显示直方图内容和特征(直方图查询)

在分布式情况下,可以远程(可能在多个位置)配置直方图,然后

集中在一个中心位置进行分析。

可以使用hdrhistogram类创建直方图实例,并指定

最小和最大可跟踪值以及所需的精度位数。

例如,创建一个直方图,可以计算[1..3600000]范围内的值,并且

1%精度(例如,跟踪范围[1毫秒..1小时]内的延迟):histogram = HdrHistogram(1, 60 * 60 * 1000, 2)

默认情况下,计数器为64位,而可以指定16位或32位计数器(字大小

选项设置为2或4字节)。

请注意,此版本中未测试计数器溢出,因此在使用

较小的柜台尺寸。

创建后,很容易将值添加到直方图中:histogram.record_value(latency)

如果生成值的代码有协调省略,

使用该方法的正确版本(例如,当预期间隔为

10毫秒):histogram.record_corrected_value(latency, 10)

在任何时候,都可以查询直方图以返回任何属性,例如

记录的值总数或给定百分比的值:count = histogram.get_total_count()

value = histogram.get_value_at_percentile(99.9)

记录的值可以使用记录的迭代器进行迭代:for item in histogram.get_recorded_iterator():

print('value=%f count=%d percentile=%f' %

item.value_iterated_to,

item.count_added_in_this_iter_step,

item.percentile)

可通过调用压缩方法生成编码/压缩直方图:encoded_histogram = histogram.encode()

接收时,压缩直方图可以从编码字符串中解码:decoded_histogram = HdrHistogram.decode(encoded_histogram)

count = decoded_histogram.get_total_count()

在聚合的情况下,可以使用decode_和_add方法:aggregation_histogram.decode_and_add(encoded_histogram)

如果要以标准表格格式打印直方图:histogram.output_percentile_distribution(file, scaling_ratio)

有关如何使用API的其他帮助:浏览python代码并查看comment部分中每个方法的api文档(如果可用)

最好的文档是查看测试目录下的测试代码

测试代码(https://github.com/hdrhistogram/hdrhistogram_py/blob/master/test/test_hdrhistogram.py" rel="nofollow">https://github.com/hdrhistogram/hdrhistogram_py/blob/master/test/test_hdrhistogram.py)几乎涵盖了每个api。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值