用于建模一系列动作的时间线模块。
项目描述
版权(c)2011,Canonical Ltd
本程序是自由软件:您可以按照自由软件基金会发布的GNU较宽松的通用公共许可证(版本3)的条款重新分发和/或修改它。
本程序是在希望它有用的前提下分发的,但没有任何保证;甚至没有关于适销性或特定用途适用性的暗示保证。有关详细信息,请参阅GNU较宽松的通用公共许可证。
您应该已经收到GNU较宽松的通用公共许可证的副本。如果没有,请参阅 <https://gnu.ac.cn/licenses/>。
时间线包提供了一种模拟一系列操作的方法。例如,在Web请求期间,应用服务器可能会调用多个后端服务,执行SQL查询和memcached查找。所有这些操作都可以在一个时间线中进行跟踪,并可以对其进行序列化或分析以查找缓慢的点。
依赖项
Python 2.6+
pytz
测试依赖项
subunit (http://pypi.python.org/pypi/python-subunit) (可选)
testtools (http://pypi.python.org/pypi/testtools)
使用方法
创建时间线对象
>>> from timeline.timeline import TimeLine >>> log = TimeLine()
然后添加操作
>>> action = log.start('mycategory', 'mydetails')
执行操作,然后告诉操作已完成
>>> action.finish()
此时可以开始另一个操作。如果想要嵌套操作,可以在start()时传递allow_nested=True。
在复杂应用程序中处理时间线时需要的一个操作是定位正确的时间线。时间线为WSGI应用程序提供辅助工具
>>> from timeline import wsgi >>> app = wsgi.make_app(inner_app)
对应用程序的调用现在会将一个‘timeline.timeline’变量注入到wsgi环境变量中,该变量可以被inner_app用于记录操作。
安装
在包含所有依赖项的环境中运行setup.py,或将工作目录添加到PYTHONPATH中。
开发
上游开发发生在https://launchpad.net/python-timeline。要设置开发工作区,如果依赖项不可用,可以使用./bootstrap.py创建bin/buildout,然后使用bin/py获取具有依赖项的Python解释器。
要运行测试,请使用您选择的运行器,测试套件是timeline.tests.test_suite。
例如
$ bin/py -m testtools.run timeline.tests.test_suite
如果您有testrepository,可以使用testr运行测试
$ testr run
项目详情
timeline-0.0.7.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 072eeb9497c7873ade2d4b9cff99fb3e3be13339bfdfbccdde3625b257a84852 |
|
MD5 | fe24461335b737329ec9a62af225bee0 |
|
BLAKE2b-256 | 609ef4bf6af001ac70f12c032e0466719adcc346e281e7e804eb8db86f6a28df |