碳计量收集剂

carbonstat的Python项目详细描述


https://img.shields.io/pypi/v/carbonstat.svghttps://img.shields.io/pypi/pyversions/carbonstat.svghttps://img.shields.io/badge/license-MIT-blue.svg

Carbon的度量收集代理。它允许你收集一些 关于代码和度量执行时间的度量

安装

通过pip安装:

pip install carbonstat

基本用法

您可以导入carbonstat.stat实例并使用它:

fromcarbonstatimportstatdeffoo():print'Hello, world!'foo()foo()stat['foo.count'].add(2)# save `foo.count` metric as execution counterstat.send()# send packet to Carbon with `foo.count` metric value

默认情况下,所有数据包都通过udp发送到127.0.0.1:2003。你可以 通过环境变量更改默认目标地址 $CARBOH_HOST$CARBON_PORT

您也可以在一个CarbonStat实例中组合多个度量:

deffoo():print'Hello from foo!'defbar():print'Hello from bar!'foo()foo()bar()stat['foo.count'].add(2)stat['bar.count'].add(1)stat.send()# send packet to Carbon with two metrics

高级用法

您可以使用方便的上下文测量代码块的执行时间 经理:

stat=CarbonStat(host=192.168.0.1,port=2003)deffoo(sec):sleep(sec)print'Hello after %d seconds!'%secwithstat.timer('foo.time')astimer:timer.start()# measure firstfoo(3)timer.stop()timer.start()# measure againfoo(5)timer.stop()stat.send()# send packet:#               heartbeat    0 timespamp#               foo.time.min 3 timestamp#               foo.time.avg 4 timestamp#               foo.time.max 5 timestamp

或者你可以做得更简单:

deffoo(sec):sleep(sec)print'Hello after %d seconds!'%secwithstat.timer('foo.time'):foo(3)withstat.timer('foo.time'):foo(5)stat.send()# send packet like above

你甚至可以装饰你的函数并测量它的执行时间 同时呼叫:

@stat.timeit('foo.time')deffoo(sec):sleep(sec)print'Hello after %d seconds!'%secfoo(3)foo(5)stat.send()# send packet like above

额外的

在某些情况下,您可能需要在发送后保存任何度量的值 这包碳纤维。可以通过设置accumulate属性来实现 到True

```

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将向量的内容从一个包发送到另一个包?   java无法扩展类并对ArrayList进行排序   java无法对字符串的ArrayList进行排序   JavaP:ajax更改事件请求返回500错误   java如何为TableHeader使用渲染器   带有记号的java JSlider问题   Java如何在不同的类中调用add()方法   java如何使用JDBC和HSQLDB检索以前自动生成的PK ID值   java如何使dropwizard应用程序在启动完成之前忽略所有调用   使用MethodValidationPostProcessor进行java Spring验证   java Mediaplayer错误(19 0)不适用于release()   java UnsatifiedPendencyException Swigger2+Sringboot+@RestClientTest   java如何从onActivityResult更新回收器视图元素   java基于图像添加地板或如何优化已有方法   jComboBox的java奇怪行为   java从数据库表php中提取信息   Android-sqlite更新方法;JAVAlang.IllegalStateException:无法执行活动的方法   java如何将多个XSD文件合并到一个XSD文件?   java在不使用大多数API的情况下消除空格