在CentOS上配置Python日志,你可以使用Python的內置logging模塊。以下是一個簡單的示例,展示了如何配置日志記錄器、處理器和格式化程序。
app.py
的Python腳本:import logging
# 創建一個日志記錄器
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)
# 創建一個文件處理器,將日志寫入到文件中
file_handler = logging.FileHandler('my_app.log')
file_handler.setLevel(logging.DEBUG)
# 創建一個格式化程序,定義日志的輸出格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler.setFormatter(formatter)
# 將處理器添加到日志記錄器
logger.addHandler(file_handler)
# 使用日志記錄器記錄日志
logger.debug('This is a debug message')
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
logger.critical('This is a critical message')
python app.py
這將在當前目錄下創建一個名為my_app.log
的日志文件,其中包含你的應用程序生成的日志消息。
你可以根據需要調整日志級別、處理器和格式化程序。例如,你可以添加一個StreamHandler來將日志輸出到控制臺,或者為不同的日志級別設置不同的格式化程序。
這是一個添加了StreamHandler的示例:
import logging
# 創建一個日志記錄器
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)
# 創建一個文件處理器,將日志寫入到文件中
file_handler = logging.FileHandler('my_app.log')
file_handler.setLevel(logging.DEBUG)
# 創建一個控制臺處理器,將日志輸出到控制臺
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.INFO)
# 創建一個格式化程序,定義日志的輸出格式
file_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
console_formatter = logging.Formatter('%(levelname)s - %(message)s')
# 將格式化程序分配給處理器
file_handler.setFormatter(file_formatter)
console_handler.setFormatter(console_formatter)
# 將處理器添加到日志記錄器
logger.addHandler(file_handler)
logger.addHandler(console_handler)
# 使用日志記錄器記錄日志
logger.debug('This is a debug message')
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
logger.critical('This is a critical message')
現在,日志消息將同時輸出到my_app.log
文件和控制臺。