OOPS报告模型和默认的分配/反序列化。
项目描述
**************************
python-oops:错误报告
**************************
版权(c)2011,Canonical Ltd
本程序是自由软件:您可以重新分发它并/或修改它
根据由自由软件基金会发布的GNU较小通用公共许可证的条款
的条款,仅限于版本3。
本程序的分发是希望它将是有用的,
但没有任何保证;甚至没有对
默示的保证,包括对
适销性或特定用途适用性的保证。有关更多详细信息,请参阅
GNU较小通用公共许可证。
您应该已经收到了GNU较小通用公共许可证的副本,
与本项目一起。如果没有,请参阅<https://gnu.ac.cn/licenses/>。
GNU较小通用公共许可证第3版(见LICENSE文件)。
oops项目提供了一个内存模型和基本的序列化、反序列化和OOPS报告的分配。
OOPS报告是关于软件中某个地方出错的一份报告...
因此,称为'oops' :) 这个核心包很少直接使用:
大多数希望生成OOPS报告的程序或服务将通过特定框架的适配器来完成
(例如,python-oops_wsgi)。
依赖关系
============
* Python 2.6+或3.3+
* pytz(http://pypi.python.org/pypi/pytz/)
测试依赖关系
====================
* subunit(http://pypi.python.org/pypi/python-subunit)(可选)
* testtools(http://pypi.python.org/pypi/testtools)
用法
=====
在Python中,OOPS报告是具有一些已知键的字典,但可以通过添加所需
的附加键进行扩展。唯一的约束是,
生成的字典必须是bson可序列化的:这是新序列器必须遵守的标准。
一些现有的序列器无法处理这种程度的扩展性,将忽略附加键,
并在它们期望但包含意外数据的键上引发错误。
典型用法
...
* 当初始化您的脚本/应用程序/服务器时,创建一个Config对象:
>>> from oops import Config
>>> config = Config()
* 新报告将基于模板报告:
>>> config.template
{}
* 您可以编辑模板报告(类似于所有报告,它只是一个字典):
>>> config.template['branch_nick'] = 'mybranch'
>>> config.template['appname'] = 'demo'
* 您可以提供一个回调(例如,在创建oops时捕获您的进程内存使用情况,
或覆盖/调整早期回调收集的信息):
>>> mycallback = lambda report, context: None
>>> config.on_create.append(mycallback)
上下文参数也是一个字典,类似于报告被传递到所有on_create
回调。这用于支持将信息传递到on_create钩子。例如,exc_info键用于
传递有关被记录的异常的信息(如果捕获了一个异常)。
...
...
...
...
...
...
...
...
...
[]
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
**pprint_to_stream 发布者会在打印后输出报告到一个流中。
这对于交互式使用非常有帮助。
**相关的项目 oops_datedir_repo 包含一个基于本地磁盘的存储库,它可以作为发布者使用。
。
更多内容即将推出。
安装
============
可以在所有依赖项都可用的情况下运行 setup.py,或者
将工作目录添加到您的 PYTHONPATH 中。
开发
===========
上游开发在 https://launchpad.net/python-oops 进行。
要设置开发工作区,如果依赖项不
立即可用,您可以使用 ./bootstrap.py 创建 bin/buildout,然后
bin/py 获取一个具有依赖项的 python 解释器。
要运行测试,请使用您选择的运行器,测试套件是
oops.tests.test_suite。
例如:
$ bin/py -m testtools.run oops.tests.test_suite
或者,您可以使用 testrepository 的 testr 命令:
$ testr run
python-oops:错误报告
**************************
版权(c)2011,Canonical Ltd
本程序是自由软件:您可以重新分发它并/或修改它
根据由自由软件基金会发布的GNU较小通用公共许可证的条款
的条款,仅限于版本3。
本程序的分发是希望它将是有用的,
但没有任何保证;甚至没有对
默示的保证,包括对
适销性或特定用途适用性的保证。有关更多详细信息,请参阅
GNU较小通用公共许可证。
您应该已经收到了GNU较小通用公共许可证的副本,
与本项目一起。如果没有,请参阅<https://gnu.ac.cn/licenses/>。
GNU较小通用公共许可证第3版(见LICENSE文件)。
oops项目提供了一个内存模型和基本的序列化、反序列化和OOPS报告的分配。
OOPS报告是关于软件中某个地方出错的一份报告...
因此,称为'oops' :) 这个核心包很少直接使用:
大多数希望生成OOPS报告的程序或服务将通过特定框架的适配器来完成
(例如,python-oops_wsgi)。
依赖关系
============
* Python 2.6+或3.3+
* pytz(http://pypi.python.org/pypi/pytz/)
测试依赖关系
====================
* subunit(http://pypi.python.org/pypi/python-subunit)(可选)
* testtools(http://pypi.python.org/pypi/testtools)
用法
=====
在Python中,OOPS报告是具有一些已知键的字典,但可以通过添加所需
的附加键进行扩展。唯一的约束是,
生成的字典必须是bson可序列化的:这是新序列器必须遵守的标准。
一些现有的序列器无法处理这种程度的扩展性,将忽略附加键,
并在它们期望但包含意外数据的键上引发错误。
典型用法
...
* 当初始化您的脚本/应用程序/服务器时,创建一个Config对象:
>>> from oops import Config
>>> config = Config()
* 新报告将基于模板报告:
>>> config.template
{}
* 您可以编辑模板报告(类似于所有报告,它只是一个字典):
>>> config.template['branch_nick'] = 'mybranch'
>>> config.template['appname'] = 'demo'
* 您可以提供一个回调(例如,在创建oops时捕获您的进程内存使用情况,
或覆盖/调整早期回调收集的信息):
>>> mycallback = lambda report, context: None
>>> config.on_create.append(mycallback)
上下文参数也是一个字典,类似于报告被传递到所有on_create
回调。这用于支持将信息传递到on_create钩子。例如,exc_info键用于
传递有关被记录的异常的信息(如果捕获了一个异常)。
...
...
...
...
...
...
...
...
...
[]
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
**pprint_to_stream 发布者会在打印后输出报告到一个流中。
这对于交互式使用非常有帮助。
**相关的项目 oops_datedir_repo 包含一个基于本地磁盘的存储库,它可以作为发布者使用。
。
更多内容即将推出。
安装
============
可以在所有依赖项都可用的情况下运行 setup.py,或者
将工作目录添加到您的 PYTHONPATH 中。
开发
===========
上游开发在 https://launchpad.net/python-oops 进行。
要设置开发工作区,如果依赖项不
立即可用,您可以使用 ./bootstrap.py 创建 bin/buildout,然后
bin/py 获取一个具有依赖项的 python 解释器。
要运行测试,请使用您选择的运行器,测试套件是
oops.tests.test_suite。
例如:
$ bin/py -m testtools.run oops.tests.test_suite
或者,您可以使用 testrepository 的 testr 命令:
$ testr run
项目详情
关闭
oops-0.0.14.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | f9756304978201786f0c8817062acbce64ea0c1f4bb23ddcbb2cf1d9b24eaeb2 |
|
MD5 | fa649af6195e0ab6cb1ebbec80f0a882 |
|
BLAKE2b-256 | 8e51710eef3b4d21f5f2910953331d6e6cf0c60b72433f27445f115d1a616ca9 |