错误/异常收集器和报告器

zilch的Python项目详细描述


自言自语

zilch是一个小库,用于记录和查看来自python的异常。 这个库的灵感来自(并使用了来自的几个相同的函数) david cramer的Sentry,但目标是在 代码/功能占用空间更小。

要求

可选

基本用法

报告异常

在要报告错误的应用程序中,导入zilch并配置 直接记录到数据库的报告者:

from zilch.store import SQLAlchemyStore
import zilch.client

zilch.client.store = SQLAlchemyStore('sqlite:///exceptions.db')

然后报告异常:

from zilch.client import capture_exception
try:
    # do something that explodes
except Exception, e:
    capture_exception()

然后,该错误将记录在数据库中,以便以后查看。

高级使用

在更大的集群场景中,或者在延迟很重要的情况下,报告 异常可以传递给ZeroMQ以记录到中心 网络录音机。客户机和录音机都必须 ZeroMQ已安装。

设置要录制的客户端:

import zilch.client

zilch.client.recorder_host = "tcp://localhost:5555"

然后报告异常:

from zilch.client import capture_exception
try:
    # do something that explodes
except Exception, e:
    capture_exception()

异常将被发送到 recorder_host已指定。

集中记录异常

记录器使用ZeroMQ来记录通过 网络要运行录制主机,请在录制它们的计算机上运行:

>> zilch-recorder tcp://localhost:5555 sqlite:///exceptions.db

如果不运行Recorder,则ZeroMQ将保留消息直到它 有空。在那之后,它将开始阻塞(在未来, 将添加选项以配置邮件的磁盘卸载)。

录像机将在初次发射时创建所需的表格。

查看记录的异常

zilch附带一个Pyramidweb应用程序,用于查看 记录的异常。一旦安装了PyramidWebHelpers,就可以 键入:

>> zilch-web sqlite:///exceptions.db

其他Web配置参数可用于指定 Web应用程序应绑定到的主机/端口(可通过运行 zilch-web-h选项)。

许可证

zilch根据麻省理工学院的许可证提供。

作者

zilchben bangert提供。

支持

Zilch被认为是功能完整的,因为项目所有者(Ben Bangert)已经 除了计划的bug修复之外,没有其他功能或开发。虫子可以 在github上归档,并附带一个测试用例以保持当前 代码覆盖率,并且在准备接受到 超级代码库。

对于功能更全面的错误收集器,Sentry现在有一个独立的客户端 这不再需要名为Raven的django。zilch创建于 Raven可用,作者现在使用Raven而不是zilch 大多数时候。

自言自语

0.1.3(2012年1月13日)

功能
  • 应用了marius gedminas的pull请求,将前缀选项支持添加到 查看webapp时出错。

0.1.2(2011年7月8日)

错误修复
  • 请求结束时的清理会话。

0.1.1(2011年7月25日)

错误修复
  • 修复client.py中webob导入的错误

0.1(2011年7月25日)

功能
  • 通过sqlalchemy和/或zeromq进行异常报告
  • 录音存储可以插入
  • 使用wsgi/cgi环境捕获异常的wsgi中间件政府数据
  • 用于记录器查看收集的异常的Web用户界面
  • 事件标记以记录每个异常的附加信息,如 主机名、应用程序等

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

推荐PyPI第三方库


热门话题
java如何从数组中打印int值?   prepared语句Java中奇怪的异常PreparedStatement:参数索引超出范围   封装如何在OOP Java中为主方法编码?   java某些手机显示快捷方式徽章需要什么权限?   java TextView不会随OnItemSelectedListener更改   java注释处理器不会自动触发吗?   java Spring JPA如何计算外键数   c#对于这个简单的OOAD问题,哪种设计最优雅?   java如何处理while循环中的异常?   Android Studio错误:进程'command'/home/draven/Downloads/安卓studio/jre/bin/java''结束,退出值为非零2   在使用Payara服务器的Vaadin应用程序中导航到根目录时,java将丢失上下文根目录   使用contentType application/json而不是application/jsonpatch+json的java修补程序   带有tomcat的java HAproxy连接不足   Java:在应用过滤器后创建一个简单的通用方法进行计数   java如何使用多态性创建一个实例化对象的方法,然后用它们高效地填充ArrayList?