这是一个日志框架。它基于jk_日志记录,但可以与Asyncio一起使用。
jk-asyncio-logging的Python项目详细描述
异步日志记录
简介
这个python模块。。。在
有关此模块的信息可在以下位置找到:
为什么选择这个模块?在
使用jk_logging
有一个日志模块,它允许从基于JSON的描述构造记录器,为日志消息提供缓冲区,并支持分层日志记录。不幸的是,这个特定的模块是同步的,因此不能直接在Asyncio
中使用。因此,此实现包装了jk_logging
,并提供了一个可在Asyncio
中使用的API。在
本模块的局限性
此模块提供包装来自jk_logging
的类(几乎所有的类)。它提供了几乎所有的功能,尽管有一个:不支持按层次递减。(这可能有一天会改变,但在不久的将来不会改变。)
如何安装模块
可以使用pip
轻松安装此模块。在
使用此命令在系统范围内安装此模块:
$ sudo pip install jk-asyncio-logging
使用以下命令安装特定于用户的此模块:
^{pr2}$PiPy模块始终与Github存储库保持同步,因此使用PyPi相当于使用Github上提供的代码进行手动安装。在
如何使用此模块
导入此模块
请使用以下代码将此模块包含到您的应用程序中:
importjk_asyncio_logging
构建一个记录器
示例:
log=jk_asyncio_logging.AsyncioConsoleLogger.create(logMsgFormatter=jk_asyncio_logging.COLOR_LOG_MESSAGE_FORMATTER)
这里我们构造了一个控制台记录器(它是一个将日志消息写入STDOUT的对象)。在
使用记录器
您可以创建基于文本的日志消息并将其写入记录器。示例:
awaitlog.debug("This is a test for DEBUG.")awaitlog.notice("This is a test for NOTICE.")awaitlog.info("This is a test for INFO.")awaitlog.warning("This is a test for WARNING.")awaitlog.error("This is a test for ERROR.")
也可以记录异常。示例:
try:awaitlog.notice("Let's try a calculation that will fail ...")a=0b=5/aexceptExceptionasee:awaitlog.error(ee)
什么样的日志对象可用?在
您可以使用以下日志对象:
AsyncioBufferLogger
-为日志消息实现一个缓冲区,稍后可以将其转发给另一个记录器AsyncioConsoleLogger
-实现对标准输出的写入AsyncioFileLogger
-实现对文件的写入AsyncioFilterLogger
-根据日志级别对日志消息进行过滤AsyncioMulticastLogger
-实现将日志消息转发到多个记录器AsyncioNamedMulticastLogger
-实现将日志消息转发到多个记录器AsyncioNullLogger
-丢弃所有日志消息AsyncioStringListLogger
-为日志消息实现一个缓冲区,其中所有日志消息都存储为纯文本字符串
进一步阅读
请参阅test
目录以获取所有记录器的详细示例。在
联系方式
这是开源代码。这不仅给了您自由使用此代码的可能性,而且 让你有贡献。请随时与下列软件的作者联系 对于评论、协作请求、改进建议或报告错误:
许可证
本软件根据以下许可证提供:
- Apache软件许可证2.0
- 项目
标签: