解決多個py模塊調用同一個python的logging模塊,打印日志沖突問題


  前期對python中的logging模塊進行了封裝,這樣自動化測試框架中的多個測試腳本(py)就可以使用同一個封裝后的日志系統,這樣各腳本中只需要引用一下即可,方面快捷。那么當我使用unittest框架執行unittest.main()運行所有自動化case時,就會打印多個重復的日志。

  如下圖:

 

經分析主要是由於logging封裝腳本中,logger參數重復導致的

def __init__(self , logger):

網上也看了其他人的解決辦法,在腳本中增加removehandler,但是怎么都不生效,誰能告訴我。

我想到的方法是在————init————下面對logger參數進行賦值,我的最終目的是能夠更好的打印日志,logger到底是什么字符,只要不重復就行。

增加下面隨機數(一定要降低logger的重復幾率才行):

1         num = ""
2         i = 0
3         while i < 10:
4             num_str = random.choice("abcdefghi_jklmnopqishuvwxyz")
5             num += str(num_str)
6             i = i+1
7             logger = num

運行測試案例:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM