1. Python小知識(shí),別用print打印日志,可以用logging模塊

        共 1216字,需瀏覽 3分鐘

         ·

        2021-04-07 13:22

        大家在寫(xiě)代碼的時(shí)候,經(jīng)常會(huì)使用print打印日志方便排查問(wèn)題,然而print的問(wèn)題就是太過(guò)簡(jiǎn)單,缺少時(shí)間、日志級(jí)別等格式化信息。


        Python自帶的logging模塊,很簡(jiǎn)單就能實(shí)現(xiàn)日志的配置和打印,它有兩種用法,方法1是把日志輸出到標(biāo)準(zhǔn)輸出,其實(shí)就是命令行界面,方法2則是輸出日志到文件,更加方便。


        ## 方法1:配置并輸出日志到標(biāo)準(zhǔn)輸出


        import logging
        LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s"logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT)

        logging.info("清空重建表")


        當(dāng)執(zhí)行程序,就會(huì)輸出:

        2021-01-24 10:43:37,883 - INFO - 清空重建表


        比自己用print要好用一些了。


        ## 方法2:配置輸出到日志文件


        import loggingimport logging.handlersimport os
        LOG_FILE = "test_log.log"logging.basicConfig(filename=LOG_FILE, filemode="w", format="[%(levelname)s] %(asctime)s [%(filename)s:%(lineno)d, %(funcName)s] %(message)s", level=logging.INFO)time_hdls = logging.handlers.TimedRotatingFileHandler(LOG_FILE, when='D', interval=1, backupCount=7)logging.getLogger().addHandler(time_hdls)

        logging.info("hello world")


        然后,你會(huì)發(fā)現(xiàn)有這個(gè)表現(xiàn):

        1、多了一個(gè)文件,叫做test_log.log;

        2、文件中是這樣的內(nèi)容,信息更加豐富:

        [INFO] 2021-03-29 22:19:46,753 [testlog.py:14, <module>] hello worldhello world

        3、這個(gè)日志文件,會(huì)每天備份一個(gè)文件,并且只保留7天的日志;


        真正的線上服務(wù),是會(huì)這樣來(lái)配置日志的,方便、強(qiáng)大。

        瀏覽 53
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
          
          

            1. 免费看又黄又无码的网站 | 免费黄片在线看 | 日韩无修正| 日韩免费黄色片 | 最新免费黄色网址 |