django logger(工作中使用)


1、setting.py

注意:創建log文件夾

# 存放Log的目錄
LOGGING_DIR = os.path.join(BASE_DIR, 'log')

LOGGING = {
    'version': 1,
     'disable_existing_loggers': True,
     'formatters': {
         'simple': {
             'format': '[%(asctime)s] %(levelname)s : %(message)s'
         },
         'verbose': {
             'format': '[%(asctime)s] %(levelname)s %(module)s %(process)d %(thread)d : %(message)s'
         },
         'standard': {
             'format': '%(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(levelname)s]- %(message)s'
         },
     },
    # handlers:用來定義具體處理日志的方式,可以定義多種,"default"就是默認方式,"console"就是打印到控制台方式。file是寫入到文件的方式,注意使用的class不同
     'handlers': {
         'mail_admins':{
             'level': 'ERROR',
             'class': 'django.utils.log.AdminEmailHandler',
             'include_html': True,
         },
         'default': {
            'level': 'DEBUG',
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': os.path.join(LOGGING_DIR, 'run.log'),
            'maxBytes': 1024*1024*5,
            'backupCount': 5,
            'formatter': 'simple',
         },
         # 'request_handler': {
         #     'level': 'DEBUG',
         #     'class': 'logging.handlers.RotatingFileHandler',
         #     'filename': os.path.join(LOGGING_DIR, 'debug_request.log'),
         #     'maxBytes': 1024*1024*5,
         #     'backupCount': 5,
         #     'formatter': 'standard',
         # },
         'console': {
             'level': 'INFO',
             'class': 'logging.StreamHandler',  # 用這'logging.StreamHandler' 日志信息才會輸出到console
             # 'filename':os.path.join(LOGGING_DIR,'info_console.log'),
             # 'formatter': 'standard',
             'formatter': 'simple',
         },
     },
    # log記錄器,配置之后就會對應的輸出日志
     'loggers': {
         'django': {
             # 'handlers': ['console', '  ', 'default'],
             'handlers': ['console', 'default'],
             'level': 'INFO',
             'propagate': True,
         },
     },
}

# 'django'是一種類型的日志
logger = logging.getLogger("django")

2、使用

導入包

from 項目名稱.settings import logger

具體使用

logger.info('ok ok ok')
logger.error('no no no')

 


免責聲明!

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



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