在Ubuntu上配置Python日志,可以使用Python的内置logging
模块。以下是一个简单的示例,展示了如何配置日志记录器、处理器和格式化程序。
logging.conf
的配置文件,用于存储日志配置信息。在这个文件中,你可以定义日志级别、处理器类型(例如控制台、文件等)以及格式化程序。以下是一个简单的配置文件示例:[loggers]
keys=root
[handlers]
keys=consoleHandler,fileHandler
[formatters]
keys=simpleFormatter
[logger_root]
level=DEBUG
handlers=consoleHandler,fileHandler
[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=simpleFormatter
args=(sys.stdout,)
[handler_fileHandler]
class=FileHandler
level=DEBUG
formatter=simpleFormatter
args=('app.log', 'a')
[formatter_simpleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=%Y-%m-%d %H:%M:%S
logging.config.fileConfig()
函数加载配置文件。以下是一个简单的Python脚本示例,演示了如何使用上述配置文件记录日志:import logging
import logging.config
# 加载配置文件
logging.config.fileConfig('logging.conf')
# 获取日志记录器
logger = logging.getLogger(__name__)
# 记录不同级别的日志
logger.debug('这是一条 DEBUG 级别的日志')
logger.info('这是一条 INFO 级别的日志')
logger.warning('这是一条 WARNING 级别的日志')
logger.error('这是一条 ERROR 级别的日志')
logger.critical('这是一条 CRITICAL 级别的日志')
app.log
文件中看到日志输出。注意:如果你想在不同的环境中使用不同的配置,可以在logging.conf
文件中使用环境变量。例如,你可以根据$ENVIRONMENT
变量的值来设置日志级别:
[logger_root]
level=%(LOG_LEVEL)s
handlers=consoleHandler,fileHandler
然后,在运行Python脚本之前,设置环境变量:
export ENVIRONMENT=DEBUG
python your_script.py
这样,日志级别将根据环境变量的值进行设置。