Pyramid插件用于YAML日志配置。
项目描述
Pyramid Sawing
一个用于通过YAML配置日志的Pyramid框架插件。这使用Python标准库的logging(使用logging.config.dictConfig初始化)。
使用方法
将包包含到您的项目中,可以通过添加到INI配置
pyramid.includes = pyramid_sawing pyramid_sawing.file = my-logging-config.yaml
或通过配置对象声明性定义
config.include('pyramid_sawing') assert 'pyramid_sawing.file' in config.registry.settings
您需要在pyramid_sawing.file中指定一个日志配置文件,它指向包含您的YAML日志配置的文件。
YAML配置
此配置遵循标准库的logging.config字典模式
一个示例配置可能看起来像这样
### # logging configuration ### version: 1 formatters: generic: format : '%(asctime)s %(levelname)-5.5s [%(name)s][%(threadName)s] %(message)s' papertrail: format : '%(asctime)s %(hostname)s my_project %(message)s' datefmt : '%Y-%m-%dT%H:%M:%S' filters: context: () : pyramid_sawing.filters.ContextFilter handlers: console: class : logging.StreamHandler level : NOTSET formatter : generic stream : 'ext://sys.stdout' syslog: class : logging.handlers.SysLogHandler level : DEBUG formatter : papertrail filters : [context] address : ['<host>.papertrailapp.com', 11111] loggers: my_project: level : INFO handlers : [console, syslog] propagate : 0 root: level : NOTSET handlers : []
在配置此插件时一个典型的陷阱是忘记指定‘版本’。请确保在配置中包含version: 1。
其他特性
传输日志
这与您在pyramid_translogger中会发现的功能相似,但此实现更可配置。
要启用此功能,请将以下行添加到您的配置/设置中。
pyramid_sawing.transit_logging.enabled? = yes # Optional... # The default logger_name is `transit_logger` pyramid_sawing.transit_logging.logger_name = lumberjack
配置传输日志器的模板可能如下所示
formatters: apache_style: # filters : [environ] format : '%(REMOTE_ADDR)s - %(REMOTE_USER)s [%(asctime)s] "%(REQUEST_METHOD)s %(REQUEST_URI)s %(HTTP_VERSION)s" %(status)s %(bytes)s "%(HTTP_REFERER)s" "%(HTTP_USER_AGENT)s"' datefmt : '%d/%b/%Y:%H:%M:%S' filters: environ: () : pyramid_sawing.filters.EnvironFilter handlers: console: class : logging.StreamHandler formatter : apache_style filters : [environ] stream : 'ext://sys.stdout' loggers: transit_logger: handlers : [console] propagate : 0
这将为您提供与pyramid_translogger完全相同的输出。
许可证
本软件受GNU Affero通用公共许可证第3.0版(AGPL)的约束。详情请见LICENSE.txt。版权所有(c)2015 Rice University
变更日志
1.1.3
调整传输日志中间件以设置和返回请求对象的响应属性。
修复Python3兼容性测试。
1.1.2
修复传输日志中间件,使其返回来自处理器的响应,而不是附加到请求对象的响应。[pumazi]
1.1.1
通过返回响应修复传输日志中间件,这导致了次要中间件和事件订阅者失败。[pumazi]
1.1.0
添加一个模拟pyramid_translogger功能的传输(请求)日志功能。[pumazi]
1.0.0
添加一个日志过滤器,允许在日志行中使用%(hostname)s。[pumazi]
从YAML文件进行日志记录。[pumazi]
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
本发布版本没有可用的源分发文件。请参阅生成分发存档的教程。
构建分发
pyramid_sawing-1.1.3-py3-none-any.whl (20.0 kB 查看哈希值)
pyramid_sawing-1.1.3-py2-none-any.whl (10.7 kB 查看哈希值)
关闭
pyramid_sawing-1.1.3-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 67404c8b0215059451f1c0e3f1a33cab8aa03cefee9c5fb1a2dc290f631910e0 |
|
MD5 | c1832bbc2fc663deea60152ebf78cbf7 |
|
BLAKE2b-256 | a9607a08e624d497f9a927400fae71de4f02c497933aba78ef46d5fb6325ea19 |
关闭
pyramid_sawing-1.1.3-py2-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 30378ed4af968edcd133930d6dc5dacb7469b3753176ce40033ef0f6c312b225 |
|
MD5 | 4f3e5b1710b2577f06cf840a01828e8f |
|
BLAKE2b-256 | 228e279e3860e9d38f4a458ab7e318abce6d3bb3d77a7c4520bef609f71df743 |