面向 TypeScript 与 JavaScript 的通用日志库,支持美化终端输出、结构化 JSON、敏感信息脱敏,且无运行时依赖。
Delgan/loguru
Python 日志库,用一个 logger 替代标准 logging 的繁琐配置,支持文件轮转、彩色输出和结构化日志。
- Star
- 24,153
- Fork
- 828
- 未关闭 Issue
- 261
- 最近提交
- 6天前
这是什么?
Loguru 是一个 Python 日志库,旨在省去标准 logging 模块繁琐的配置。它提供一个开箱即用的预配置 logger,默认输出到 stderr,只需一行导入即可开始记录日志。所有的输出目标(sink)、格式、过滤器和级别都通过统一的 add() 函数设置。
文件日志支持按大小、时间或时长轮转,可设置保留期限自动清理,关闭时还能压缩。库中还包括花括号风格的字符串格式化、彩色输出,以及包含变量值的完整异常堆栈。sink 可以是线程安全的,也可以通过队列保证多进程下的日志完整性。上下文可通过 bind() 或 contextualize() 附加,消息也能序列化为 JSON。
Loguru 还提供与标准 logging 的互操作能力,既可以把已有的 logging.Handler 接入 Loguru,也可以把 Loguru 的消息转发回标准模块。它支持 Python 3.5 及以上版本以及 PyPy。
核心功能
- 01开箱即用的预配置 logger,无需额外初始化代码
- 02通过统一的 add() 函数管理输出目标、格式、过滤器和级别
- 03支持文件轮转、保留期限和压缩
- 04终端彩色输出,异常堆栈可显示变量值
- 05sink 线程安全,可通过队列实现多进程安全日志
- 06可与 Python 标准 logging 模块互相桥接
适用场景
- 在 Python 脚本中快速加入日志,无需编写 logger 配置
- 为长期运行的服务生成轮转和压缩的日志文件
- 捕获线程中抛出的异常,确保其出现在日志中
- 让 Python 库默认静默,由应用按需开启其日志
快速上手
- 1
从 PyPI 安装 loguru
pip install loguru - 2
导入开箱即用的 logger 并记录一条消息
收录于专题
标签
常见问题
- loguru 是什么?
- Python 日志库,用一个 logger 替代标准 logging 的繁琐配置,支持文件轮转、彩色输出和结构化日志。 Loguru 是一个 Python 日志库,旨在省去标准 logging 模块繁琐的配置。它提供一个开箱即用的预配置 logger,默认输出到 stderr,只需一行导入即可开始记录日志。所有的输出目标(sink)、格式、过滤器和级别都通过统一的 add() 函数设置。
- loguru 可以免费使用吗?用的什么许可证?
- loguru 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- loguru 还在维护吗?
- 活跃维护中。loguru 最近一次提交是在 2026年10月18日。
- loguru 适合用来做什么?
- 在 Python 脚本中快速加入日志,无需编写 logger 配置 为长期运行的服务生成轮转和压缩的日志文件 捕获线程中抛出的异常,确保其出现在日志中 让 Python 库默认静默,由应用按需开启其日志
- loguru 怎么安装和运行?
- 从 PyPI 安装 loguru: pip install loguru 导入开箱即用的 logger 并记录一条消息
- 在哪里获取 loguru?
- 源代码和安装说明在 GitHub 上:https://github.com/Delgan/loguru
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
面向 JavaScript 与 TypeScript 的零依赖日志库,支持 Deno、Node.js、Bun、浏览器和边缘函数。
面向 Apple 平台(macOS、iOS、tvOS、watchOS、visionOS)的日志框架,可将日志同时输出到控制台、文件或自定义后端。
Go 语言的高性能结构化分级日志库,兼具零分配的 Logger 与更灵活的 SugaredLogger。
PHP 日志库,可将日志发送到文件、套接字、邮件、数据库及多种 Web 服务,实现 PSR-3 接口。
Go 语言的结构化日志库,与标准库 log 接口兼容,支持可插拔的格式化器和钩子,目前处于维护模式。