the*_*ank 3 logging python-3.x
我正在使用 Python 3.5 中的日志记录模块,我觉得我以前已经这样做过,但我想使用我的配置文件提供的常量来更改日志记录级别。
目前我正在使用:
logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.INFO)
logger.setLevel(logging.INFO)
Run Code Online (Sandbox Code Playgroud)
我想在配置文件中声明 INFO、DEBUG 等并使用文字替换。
我的脚本配置:
LOG_LEVEL = 'DEBUG' #this value to be modified by user.
Run Code Online (Sandbox Code Playgroud)
脚本:
import my_script_conf as msc
SET_LEVEL = 'logging.' + msc.LOG_LEVEL
BASIC_LEVEL = 'level=' + SET_LEVEL
logger = logging.getLogger(__name__)
logging.basicConfig(BASIC_LEVEL)
logger.setLevel(SET_LEVEL)
Run Code Online (Sandbox Code Playgroud)
Python 对此感到不安,任何对我糟糕的编码的帮助将不胜感激。任何达到相同结果的途径,我基本上希望它可读且易于使用,在外部配置文件中设置日志记录模块级别似乎是最明智的选择。你的Pythonista可能有其他想法!
谢谢,弗兰克
不确定是否完全理解你的问题,但如果有人想使用环境变量或配置文件设置 python 日志级别,你可以简单地使用字符串,它将被处理:
import logging
logging.basicConfig(
level=os.environ.get('LOGLEVEL', 'INFO').upper()
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11792 次 |
| 最近记录: |