跳转到主要内容

将日志f-string和str.format语法转换为printf风格的字符串

项目描述

logo

printf-log-formatter

自动将f-string和str.format()语法转换为printf风格的字符串。

换句话说,这种语法

logger.error(f"{1}")
logger.error("{}".format(1))
logger.error("{foo}".format(foo=1))

被转换为

logger.error("%s", 1)
logger.error("%s", 1)
logger.error("%s", 1)

动机

我们为什么要这样做? 这篇文章 解释得很好。

主要适用于使用Sentry日志集成的Python项目。

安装

运行此pre-commit钩子有两种选择

Python钩子

如果您想使用Python安装,请运行

pip install printf-log-formatter

然后使用以下命令设置pre-commit钩子

- repo: local
  hooks:
  - id: printf-log-formatter
    name: printf-log-formatter
    entry: printf-log-formatter
    language: system
    types: [ python ]
    args:
      - --log-level=error

Rust钩子

如果您愿意编译Rust版本,可以使用

- repo: https://github.com/sondrelg/printf-log-formatter
  rev: ''
  hooks:
    - id: printf-log-formatter
      args:
        - --log-level=error

我只想降级一次日志记录器

Rust二进制文件或Python包也可以直接运行,如下所示

printf-log-formatter $(find . -name "*.py") --log-level error

项目细节


下载文件

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

源代码发行版

本发布版本没有可用的源代码分发文件。请参阅有关生成分发存档的教程。

构建分发版

printf_log_formatter-0.3.0-py3-none-win_amd64.whl (1.6 MB 查看哈希值)

上传时间 Python 3 Windows x86-64

printf_log_formatter-0.3.0-py3-none-win32.whl (1.5 MB 查看哈希值)

上传时间 Python 3 Windows x86

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB 查看哈希值)

上传时间 Python 3 manylinux: glibc 2.17+ x86-64

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.9 MB 查看哈希值)

上传时间 Python 3 manylinux: glibc 2.17+ s390x

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.0 MB 查看哈希值)

上传时间 Python 3 manylinux: glibc 2.17+ ppc64le

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (2.9 MB 查看哈希值)

上传时间 Python 3 manylinux: glibc 2.17+ i686

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.7 MB 查看哈希值)

上传时间 Python 3 manylinux: glibc 2.17+ ARMv7l

printf_log_formatter-0.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB 查看哈希值)

上传于 Python 3 manylinux: glibc 2.17+ ARM64

printf_log_formatter-0.3.0-py3-none-macosx_11_0_arm64.whl (1.6 MB 查看哈希值)

上传于 Python 3 macOS 11.0+ ARM64

printf_log_formatter-0.3.0-py3-none-macosx_10_7_x86_64.whl (1.7 MB 查看哈希值)

上传于 Python 3 macOS 10.7+ x86-64

由以下支持