您的位置:首页 > 编程语言 > Python开发

python模块之 - logging

2016-03-07 19:34 465 查看
import logging

logs = logging.getLogger("APACHE")

logs.setLevel(logging.INFO) # 如果此处设置了等级,则优先级最高,如果下面对屏幕或文件单独设置的日志等级 优先级都低于此处等级

# 定义一个屏幕输出的log

srlog = logging.StreamHandler()

srlog.setLevel(logging.INFO)

# 定义一个输出文件的log

filelog = logging.FileHandler("test.log")

filelog.setLevel(logging.INFO)

# 定义输出是的日志格式

log_format = logging.Formatter("%(asctime)s - %(filename)s - %(levelname)s - %(module)s - %(message)s")

# 将输出格式加到屏幕输出句柄、文件输出句柄的格式中

srlog.setFormatter(log_format)

filelog.setFormatter(log_format)

# 将两个句柄放入log日志对象中

logs.addHandler(srlog)

logs.addHandler(filelog)

# 开始日志输出

logs.debug("DEBUG中文")

logs.warning("This is a WARNING中文测试")

logs.info("This is a INFO 中文")

logs.error("This is a ERROR 中文测试")

logging的Formatter格式包括如下类型:

%(name)s Name of the logger (logging channel)

%(levelno)s Numeric logging level for the message (DEBUG, INFO, WARNING, ERROR, CRITICAL)

%(levelname)s Text logging level for the message ("DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL")

%(pathname)s Full pathname of the source file where the logging call was issued (if available)

%(filename)s Filename portion of pathname

%(module)s Module (name portion of filename)

%(lineno)d Source line number where the logging call was issued (if available)

%(funcName)s Function name

%(created)f Time when the LogRecord was created (time.time() return value)

%(asctime)s Textual time when the LogRecord was created

%(msecs)d Millisecond portion of the creation time

%(relativeCreated)d Time in milliseconds when the LogRecord was created, relative to the time the logging module was loaded (typically at application startup time)

%(thread)d Thread ID (if available)

%(threadName)s Thread name (if available)

%(process)d Process ID (if available)

%(message)s The result of record.getMessage(), computed just as the record is emitted
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: