跳转到主要内容

简单日志记录,没有调试打印调用的借口。

项目描述

Simple Logging

PyPI PyPI Travis ReadTheDocs Code style: Black Downloads Test Coverage Maintainability

简单日志记录,没有调试打印调用的借口。

  • 免费软件:BSD 3-Clause许可证
  • 文档:[https://simplelogging.readthedocs.io](https://simplelogging.readthedocs.io)。

功能

  • 日志管理(调试、信息或错误消息)
  • 简单的日志设置
  • 基于Python标准库中的logging模块
  • 基于colorlog进行彩色日志记录

针对高级用户

示例

基本用法

import simplelogging

# log = simplelogging.get_logger(console_level=simplelogging.DEBUG)
# log = simplelogging.get_logger(file_name="log.txt")
log = simplelogging.get_logger()

a_string_variable = "hello"
an_integer_variable = 42
a_floating_point_variable = 3.14

log.debug("some debug")
log.info("some info")
log.info(
    "some variables: %s, %d, %f",
    a_string_variable,
    an_integer_variable,
    a_floating_point_variable,
)
log.warning("some warning")
log.error("some error")
log.critical("some critical error")

try:
    x = 1 / 0
except ZeroDivisionError as error:
    log.exception(error)

quickstart result

请记住,您不应该自己进行字符串格式化。将格式化委托给simplelogging(即本例中的logging),只有在必要时才会进行格式化,也就是说,如果消息将要显示。请参阅上述如何显示变量的示例。

模块用法

example_module.py

import simplelogging

log = simplelogging.get_logger()


def log_some_messages():
    log.debug("## some debug ##")
    log.info("## some info ##")
    log.warning("## some warning ##")
    log.error("## some error ##")

main.py

import example_module
import simplelogging

# log = simplelogging.get_logger(console_level=simplelogging.DEBUG)
# log = simplelogging.get_logger(file_name="log.txt")
log = simplelogging.get_logger()

a_variable = "a nice variable"
another_variable = 42

log.error("---- normal logging ----")
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("%s and %d", a_variable, another_variable)

log.error("---- example_module writes to the log ----")
example_module.log_some_messages()

log.error("---- reduced logging (bye debug and info messages) ----")
log.reduced_logging()
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("an error")

log.error("---- full logging (welcome back debug and info messages) ----")
log.full_logging()
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("an error")

控制台输出结果

quickstart with modules result

更多示例请参阅文档:[https://simplelogging.readthedocs.io](https://simplelogging.readthedocs.io)。

待办事项

  • 添加测试
  • 添加类型注解
  • 添加文档字符串
  • 提交钩子
  • 描述优缺点和替代方案
  • 发布1.0版本!

致谢

本包是Python标准库中logging包的扩展。控制台着色依赖于colorlog

变更日志

0.12.0 (2024-07-02)

  • 弃用Python 3.7支持
  • 切换到Poetry核心作为构建引擎

0.11.0 (2020-08-31)

  • 使用poetry

0.10.0 (2019-09-16)

  • setup.py:仅在必要时才需要pytest-runner
  • 弃用Python 3.4支持

0.9.0 (2018-12-14)

  • 改进文档
  • 添加测试
  • 更改API,以便更容易更改日志级别

0.8.0 (2018-12-09)

  • 改进文档
  • 更改默认格式:扩大严重错误的级别大小

0.7.0 (2018-12-08)

  • 修复日志到文件

0.6.0 (2018-12-07)

  • 控制台彩色输出
  • 改进文档

0.5.0 (2018-12-02)

  • 修复PyPI上的README渲染

0.4.0 (2018-12-02)

  • 修复bump配置

0.3.0 (2018-12-02)

  • 首次在PyPI上发布。

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

simplelogging-0.12.0.tar.gz (4.9 kB 查看哈希值)

上传时间

构建分布

simplelogging-0.12.0-py3-none-any.whl (5.3 kB 查看哈希值)

上传时间 Python 3

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面