用于监视和测试异步程序的小型库

aiodebug的Python项目详细描述


这是一个用于监视和测试异步程序的小型库。 它的监控功能应该在生产中一直处于启用状态。

如果安装了aiodebug,它将使用logwood,否则它将默认 到标准日志模块。

aiodebug只在python 3.5中测试。目前还没有支持旧版本的计划。

当回调阻止事件循环时记录警告

aiodebug.log_slow_callbacks.enable(0.05)

这将生成警告级别日志,如

Executing <Task pending coro=<foo() running at /home/.../foo.py:37>
wait_for=<Future pending cb=[Task._wakeup()]>> took 0.069 seconds

Asyncio已经在调试模式下执行了此操作,但您可能不希望在生产中启用完全调试模式。

在STATSD中跟踪事件循环滞后

aiodebug.monitor_loop_lag.enable(statsd_client)

跟踪计划呼叫延迟的时间并将延迟发送到STATSD:

https://github.com/qntln/aiodebug/raw/master/docs/loop-lags.png

事件循环中的加速或减速时间

这主要用于测试。

loop=aiodebug.testing.time_dilated_loop.TimeDilatedLoop()asyncio.set_event_loop(loop)loop.time_dilation=3awaitasyncio.sleep(1)# Takes 0.333s of real timeloop.time_dilation=0.1awaitasyncio.sleep(1)# Takes 10s of real time

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

推荐PyPI第三方库


热门话题
java如何比较二维交错数组中列中元素的长度   java依赖javafx是安全的。util。回电话?   用于格式化二进制数的正则表达式,在Java中,从右到左每4个字符使用空格   java我应该在基于Springboot的后端使用headless模式吗?   java Hibernate获取数据。list()已去润滑,表未映射。怎么办?   java Spring引导存储库,包括示例、规范和页面   java使用UUID。randomUUID()和多次调用方法?   每个客户端请求的Java DatagramSocket不同线程   字符串中的java表达式到arraylist   数组循环遍历word文档和图像,并存储到SQL java   java wsimport Xauthfile错误   java在适配器中返回相同的片段   charAt()方法如何从字符串中提取数字并将其放入Java中的新字符串中?   java我想在两部手机之间建立hfp连接   java如何添加priceAfterDiscount的公共方法,该方法返回折扣后的价格