相关疑难解决方法(0)

配置第三方脚本的日志记录

我有一个第三方python控制台脚本,我不想修改该源代码.

但我想配置由脚本及其库完成的日志记录.该脚本使用标准的python日志记录,但不支持它的配置.

该脚本使用此模式:

import logging
logger=logging.getLogger(__name__)
Run Code Online (Sandbox Code Playgroud)

用例:

  • 我想要忽略文件foo.py的INFO消息.
  • 我想在记录消息中包含PID.

如果我不想修改控制台脚本的来源,我该如何配置日志记录?

该脚本通过调用cron.

如果此脚本如何配置日志记录?

重要

这个答案中创建一个包装器脚本对我来说不是一个解决方案.

linux进程层次结构如下所示:

Cron -> third_party_script
Run Code Online (Sandbox Code Playgroud)

在cron和third_party_script.之间应该有任何"胶水","包装"或"脏黑客"脚本.

为什么突兀/ netpicking?

我想练习"关注点分离".我希望能够在一个地方配置一次记录.这个配置应该被virtualenv的所有python代码使用.编写包装器将是一种解决方法.我想要一个解决方案.

python logging

17
推荐指数
3
解决办法
2779
查看次数

如何在conda env中重用全局站点包

我有一个名为的项目ABC,我有一个conda env只是为了它在折叠~/anaconda/envs/ABC,我相信它是一个venv,我想使用全球网站包中的一些特定的包.

对于普通的Python安装,可以从venv文件夹中删除no-global-site-package.txt,或者通过设置venv来使用global-site-packages,但我没有找到任何等效方法来执行此操作在Anaconda.在线文档也没有答案.

如何为Anaconda做这个?

python virtualenv anaconda

8
推荐指数
2
解决办法
6472
查看次数

标签 统计

python ×2

anaconda ×1

logging ×1

virtualenv ×1