django 專案日誌記錄設定
settings.py
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': '%(levelname)s [%(asctime)s] %(pathname)s %(lineno)d %(funcName)s \n \t %(message)s \n',
'datefmt': '%Y-%m-%d %H:%M:%S'
},
'simple': {
'format': '%(levelname)s %(funcName)s %(message)s'
},
'db': {
'format': '%(levelname)s [%(asctime)s] %(lineno)d %(funcName)s %(process)d %(thread)d \n \t %(message)s \n',
'datefmt': '%Y-%m-%d %H:%M:%S'
},
'task': {
'format': '%(levelname)s [%(asctime)s] %(pathname)s %(lineno)d %(funcName)s %(process)d %(thread)d \n \t %(message)s \n',
'datefmt': '%Y-%m-%d %H:%M:%S'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'debug': {
'level': 'DEBUG',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'verbose',
'filename': os.path.join(LOGGING_DIR, 'debug.log'),
'when': 'midnight',
'backupCount': 7
},
'django_run': {
'level': 'INFO',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'verbose',
'filename': os.path.join(LOGGING_DIR, 'django_run.log'),
'when': 'midnight',
'backupCount': 7
},
'task': {
'level': 'INFO',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'verbose',
'filename': os.path.join(LOGGING_DIR, 'django_task.log'),
'when': 'midnight',
'backupCount': 7
},
'run_error': {
'level': 'ERROR',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'verbose',
'filename': os.path.join(LOGGING_DIR, 'django_error.log'),
'when': 'midnight',
'backupCount': 7
},
'db': {
'level': 'ERROR',
'class': LOG_CLASS,
'formatter': 'db',
'filename': os.path.join(LOGGING_DIR, 'django_db.log'),
}
},
'loggers': {
'django': {
'handlers': ['console', 'django_run'],
'level': 'INFO',
'propagate': True
},
'django.request': {
'handlers': ['console', 'run_error'],
'level': 'INFO',
'propagate': True
},
'log': {
'handlers': ['console','debug','run_error','django_run'],
'level': 'INFO',
'propagate': True
},
'celery': {
'handlers': ['task'],
'level': "DEBUG",
'propagete': True
},
'django.db': {
'handlers': ['db'],
'level': 'INFO',
'propagete': True
}
}
}
# 在模組中使用
from logging import getLogger logger = getLogger('log')
logger.info('---test---')
相關文章
- 如何在專案中記錄日誌資訊?
- nginx日誌檔案按天記錄定時清理迴圈記錄Nginx
- Django筆記三十之log日誌記錄詳解Django筆記
- Laravel 指定日誌檔案記錄任意日誌Laravel
- 操作日誌記錄(包括輸出至自定義日誌檔案)
- 日誌記錄器
- ThinkPHP日誌記錄PHP
- 專案日誌
- 如何定製.NET6.0的日誌記錄
- springboot使用logback記錄日誌,配置檔案Spring Boot
- Django(37)配置django日誌Django
- Laravel sql 日誌記錄LaravelSQL
- 使用配置檔案方式記錄Python程式日誌Python
- SLF4J記錄日誌&&日誌檔案的滾動策略__SpringBootSpring Boot
- Django日誌配置Django
- 記錄一則clear重做日誌檔案的案例
- Nginx日誌格式設定Nginx
- 日誌記錄模組logging
- monolog 日誌記錄器解析Mono
- SpringBoot專案整合日誌Spring Boot
- svn 提交程式碼時強制錄入日誌設定
- Django實現web端tailf日誌檔案DjangoWebAI
- 設計模式:日誌記錄器——工廠方法模式設計模式
- django專案筆記1Django筆記
- Flutter日曆專案的優化記錄Flutter優化
- java專案日誌配置檔案Java
- python--django專案如何設定用自己的iP地址訪問專案PythonDjango
- 設定mybatis 是否列印日誌MyBatis
- SVN提交日誌模板設定
- 記錄騰訊雲使用日誌
- log4net日誌記錄
- SpringBoot記錄HTTP請求日誌Spring BootHTTP
- Rust 實現日誌記錄功能Rust
- .NET Core使用Nlog記錄日誌
- NetCore的全域性日誌記錄NetCore
- python日誌記錄器的配置Python
- iptables防火牆如何記錄日誌防火牆
- eclipse設定檢視GC日誌和如何理解GC日誌EclipseGC