显示在请求处理期间生成的日志消息的wsgi中间件。
cipher.logview的Python项目详细描述
cipher.logview
显示在请求处理期间生成的日志消息的wsgi中间件。
包装Dozer并添加一些功能:
- 装饰有 @cipher.logview.timed。
- 堆栈格式化程序显示每个堆栈中__traceback_info__的值 框架,如果存在具有该名称的本地(这是由 zope.exceptions.例外格式化程序)。
- 用于zope.browserpageviewpagetemplatefile的monkey补丁,它记录 正在呈现的页模板的名称(使用monkeypatch=True启用)。
- 用于zope.app.publication的zopepublication的猴子补丁,它记录 正在调用的视图类的名称,以及 和内容对象提供的接口(启用 monkeypatch=True)。
使用量
在wsgi管道中添加cipher.logview.LogviewMiddleware。
例如,这里有一个PasteDeploy风格的paster.ini的摘录:
[filter-app:logview] use = egg:cipher.logview next = main loglevel = DEBUG keep_tracebacks = yes monkeypatch = yes # highlighting rules: logview.substring = css-color logview.sql = #fee logview.txn = #efe # traceback highlighting rules: traceback.substring=css-color traceback.dozer/ = #ddd traceback.python2.7/ = #ccc traceback.paste/ = #bbb traceback.webob/ = #aaa traceback.weberror/ = #999 traceback.zope/ = #888 traceback.z3c/ = #888 traceback.storm/ = #777 traceback.transaction/ = #666 traceback.ZODB/ = #555 traceback.keas/ = #444 traceback.cipher/ = #840
它允许您从命令行选择启用中间件
bin/paster serve paster.ini -n logview
注意:如果希望看到调试消息,例如 cipher.logview本身–您需要确保 根记录器设置为调试。如果不希望调试消息 你的日志文件(谁做的?),通过设置 每个处理者。paster.ini示例:
[logging] keys = root, ... [logger_root] handlers = stdout, logfile level = DEBUG [handlers] keys = stdout, logfile, ... [handler_stdout] class = StreamHandler args = (sys.stdout,) level = INFO formatter = ... [handler_logfile] class = logging.handlers.RotatingFileHandler args = ('events.log', 'a', 10*1024*1024, 5) level = INFO formatter = ...
更改
1.1.0(2013-03-22)
- 添加对Python3.3的支持。
- 需要推土机0.4。
- 不再需要粘贴。
- 外观修复:将缺少的右括号添加到请求时间线 标签。
1.0.2(2012-12-13)
- 处理属于方法的视图(例如<;browser:page class=“…” attribute=“…”/>;):显示类和方法名称,正确的源 方法的位置和上下文。以前你会看到 “正在调用内置InstanceMethod-没有可用的源信息”。
- 添加cipher.logview.format_tb。使用它格式化异常回溯 (需要推土机0.3)。
- 添加对格式堆栈/格式TB中的“回溯补充”的支持。 zope页面模板使用它来指示页面模板 文件名/行/列/表达式。
1.0.1(2012-12-07)
- 处理由<;browser:page>;创建的动态子类并显示实际类。
- 错误修复:有时枚举上下文的接口可能会触发 禁止属性异常。
- 在readme.rst中提到日志级别gotcha。
1.0.0(2012-12-05)
- 首次公开发行。