下面是2个不同的模块:驱动程序模块和员工模块。我是 尝试在两个不同的文件中记录调试语句,但是现在将 正在创建日志文件,且其中没有调试语句。
我一直尝试着。
import logging
logger = logging.getLogger(__name__)
formatter = logging.Formatter("%(asctime)s : %(levelname)s : %(name)s : %
(message)s")
file_handler = logging.FileHandler('driver.log')
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
#logging.basicConfig(filename="Employee.log", level=logging.DEBUG,
format="%(asctime)s : %(levelname)s : %(name)s : %(message)s")
from Employee import Employee
logger.debug("Before creation of object")
Emp1= Employee("Rahul",1,100000)
logger.debug("After creation of object")
Emp1.display()
#Employee Module
import logging
logger = logging.getLogger(__name__)
formatter = logging.Formatter("%(asctime)s : %(levelname)s : %(name)s : %
(message)s")
file_handler = logging.FileHandler("Employee.log")
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
#logging.basicConfig(filename="Employee.log", level=logging.DEBUG,
format="%(asctime)s : %(levelname)s : %(name)s : %(message)s")
class Employee():
def __init__(self,name,id,salary):
self.salary = salary
self.name=name
self.id =id
def increment(self, per):
self.salary=self.salary*((100+per)/100)
def decrement(self, per):
self.salary=self.salary*((100-per)/100)
def display(self):
logger.debug("Name is {}".format(self.name))
logger.debug("ID is {}".format(self.id))
logger.debug("Sal is {}".format(self.salary))
答案 0 :(得分:0)
您还需要在记录器实例上设置级别。处理程序和记录器都有一个级别。一个记录器可以分配有多个处理程序,每个处理程序的记录级别都不同。
logger.setLevel(logging.DEBUG)
编辑:https://docs.python.org/3/library/logging.html#logging.Logger.setLevel