日志配置由格式化程序和FileHandler方法组成。我们需要导入一个日志记录包,然后创建一个将负责整个日志记录的对象。
如果在getLogger()方法中添加参数_name_,则将能够添加要为其创建日志文件的测试用例名称。如果参数中省略了此参数,则默认情况下它将在日志文件中输出root。
logger = logging.getLogger(_name_)
下面列出了不同类型的记录器级别。我们可以在测试用例中添加所有,一些或至少一个记录器。
logger.debug(“调试日志”)
logger.info(“信息日志”)
logger.warning(“警告日志”)
logger.error(“错误日志”)
logger.critical(“关键日志”)
然后,我们应该指定记录器对象的位置以打印这些日志。这可以通过addHandler()方法来处理。此方法接受文件处理程序对象作为其参数。
文件处理程序对象与父日志记录程序包及其方法一起使用,该方法称为FileHandler()。此方法包含完整的日志记录信息可用的日志文件的名称和位置。
fileHandler = logging.FileHandler('logfile.log') logger.addHandler(fileHandler)
接下来,我们需要定义创建日志文件的格式。这是通过从父日志记录程序包获得的Formatter()方法实现的。Formatter()方法采用要遵循的格式作为参数。
logging.Formatter("%(asctime)s :%(levelname)s : %(name)s :%(message)s")
它必须存储在一个formatter对象中,并且可以通过setFormatter()方法与fileHandler对象关联。此方法接受格式化程序对象。
formatter=logging.Formatter("%(asctime)s:%(levelname)s:%(name)s:%(message") fileHandler.setFormatter(formatter)
最后,我们需要设置日志记录级别。这是通过setLevel()方法实现的。
logger.setLevel(logging.ERROR)
这样,我们可以限制在日志文件中打印所有类型的记录器级别。
编码实现日志记录配置。
import logging def loggingDmo(): # getLogger() method takes the test case name as input logger = logging.getLogger(__name__) # FileHandler() method takes location and path of log file fileHandler = logging.FileHandler('logfile.log') # Formatter() method takes care of the log file formatting formatter = logging.Formatter("%(asctime)s :%(levelname)s : %(name)s :%(message)s") fileHandler.setFormatter(formatter) # addHandler() method takes fileHandler object as parameter logger.addHandler(fileHandler) # setting the logger level logger.setLevel(logging.DEBUG) logger.debug("Debug log") logger.info("Information log ") logger.warning("Warning log") logger.error("Error log") logger.critical("Critical log")