日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Django項目如何正確配置日志(logging)

瀏覽:50日期:2024-09-09 08:55:51

當Django項目正式部署上線后,我們需要設置DEBUG = False。這時開發者應怎樣檢查Django程序在生產環境運行時有什么異?;蝈e誤呢?答案就是日志(logging)。在生產環境中,Django默認是不會在服務器上自動生成log文件的,即使程序出現error級別的故障也不會通知管理員。本文將教你如何在Django項目中正確配置日志(logging),讓Django生成log日志文件,并在程序運行發生error級別故障時通知管理員。

日志基礎知識

日志與我們的軟件程序密不可分。它記錄了程序的運行情況,可以給我們調試程序和故障排查提供非常有用的信息。每一條日志信息記錄了一個事件的發生。具體而言,它包括了:

事件發生時間 事件發生位置 事件的嚴重程度--日志級別 事件內容

日志的級別又分為:

DEBUG:用于調試目的的低級系統信息 INFO:一般系統信息 WARNING:描述已發生的小問題的信息。 ERROR:描述已發生的主要問題的信息。 CRITICAL:描述已發生的嚴重問題的信息。

在Django項目中,我們可以針對日志的不同級別設置不同的處理方式。比如INFO級別及以上的日志我們寫入到log文件里保存,Error級別及以上的日志我們直接通過郵件發送給系統管理員。

Django的日志模塊

Django的日志模塊其實就是python的logging模塊。它由4部分組成:

Logger 記錄儀:生成和記錄每條日志信息及級別 Handler處理程序: 根據日志信息級別交由相應處理程序處理(比如生成文件或發送郵件) Filters 過濾器:日志交由處理程序處理前需要滿足的過濾條件(比如Debug=True或False) Formaters 格式化程序:決定每條日志的打印輸出格式,可以有完整版的,也有簡單版的

一個logger記錄儀的例子如下所示。當程序運行出現錯誤時,它生成了一條級別為error的日志信息。這條記錄產生后就會交由Handler處理。

# import the logging libraryimport logging# 獲得logger實例logger = logging.getLogger(__name__)def my_view(request, arg1, arg): ... if error_happens:# Log an error messagelogger.error(’Something went wrong!’)

當Debug=True時,日志信息默認在console輸出。現在我們還需要在django配置文件里配置日志(logging)相關內容,使得當Debug=False時,日志信息會輸出到日志文件里或發送給系統管理員。

settings.py推薦日志配置信息

以下基本配置信息在django cookiecutter推薦使用的logging配置信息上做了修改,可適合大部分項目使用。如果真的希望發送和接收到郵件還需在settings.py正確配置電子郵箱Email。

# 給ADMINS發送郵件需要配置ADMINS = ( (’admin_name’,’your@gmail.com’),)MANAGERS = ADMINS# 創建log文件的文件夾LOG_DIR = os.path.join(BASE_DIR, 'logs')# 基本配置,可以復用的LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}, 'formatters': { # 定義了兩種日志格式'verbose': { # 標準 'format': '%(levelname)s %(asctime)s %(module)s ' '%(process)d %(thread)d %(message)s'},’simple’: { # 簡單 ’format’: ’[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s’}, }, 'handlers': { # 定義了三種日志處理方式'mail_admins': { # 只有debug=False且Error級別以上發郵件給admin 'level': 'ERROR', 'filters': ['require_debug_false'], 'class': 'django.utils.log.AdminEmailHandler',},’file’: { # Info級別以上保存到日志文件 ’level’: ’INFO’, ’class’: ’logging.handlers.RotatingFileHandler’, # 保存到文件,根據文件大小自動切 ’filename’: os.path.join(LOG_DIR,'info.log'), # 日志文件 ’maxBytes’: 1024 * 1024 * 10, # 日志大小 10M ’backupCount’: 2, # 備份數為 2 ’formatter’: ’simple’, # 簡單格式 ’encoding’: ’utf-8’,},'console': { # 打印到終端console 'level': 'DEBUG', 'class': 'logging.StreamHandler', 'formatter': 'verbose',}, }, 'root': {'level': 'INFO', 'handlers': ['console']}, 'loggers': {'django.request': { # Django的request發生error會自動記錄 'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': True, # 向不向更高級別的logger傳遞},'django.security.DisallowedHost': { # 對于不在 ALLOWED_HOSTS 中的請求不發送報錯郵件 'level': 'ERROR', 'handlers': ['console', 'mail_admins'], 'propagate': True,}, },}

以上就是Django項目如何正確配置日志(logging)的詳細內容,更多關于Django 正確配置日志的資料請關注好吧啦網其它相關文章!

標簽: Django
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
黑森林国产精品av| 国产在视频一区二区三区吞精| 中文字幕人成乱码在线观看 | 欧美在线亚洲| 欧美日韩中文字幕一区二区三区| 91精品啪在线观看国产18 | 亚洲精品中文字幕99999| 亚洲性视频h| 先锋影音国产一区| 四虎在线精品| 亚洲我射av| 欧美精品影院| 精品美女在线视频| 日韩啪啪电影网| 国产精品99免费看| 影院欧美亚洲| 日韩和欧美的一区| 久久免费福利| 精品丝袜在线| 免费久久精品视频| 国产伦理一区| 日本不良网站在线观看| 免费久久精品| 日韩精品一级中文字幕精品视频免费观看 | 中文字幕日韩亚洲| 日本欧美一区| 美女免费视频一区| 在线中文字幕播放| 亚洲尤物在线| 欧美日韩一区二区三区在线电影| 久久精品国产99| 精品欧美久久| 日韩三级精品| 极品av在线| 久热综合在线亚洲精品| 欧美中文一区| 欧美在线看片| 亚洲成人va| 视频国产精品| 亚洲黄色免费av| 中文一区一区三区免费在线观 | 五月婷婷亚洲| 久久精品99久久久| 五月激情久久| 最新国产精品久久久| 精品网站999| 99精品视频精品精品视频| 亚洲尤物av| 国产aⅴ精品一区二区四区| 日韩午夜av| 欧美aa在线视频| 亚洲一区免费| 成人综合一区| 亚洲精品极品| 日韩电影二区| 日本a级不卡| 久久精品99久久无色码中文字幕| 97成人超碰| 亚洲激情中文在线| 精品99在线| 日韩精品亚洲一区二区三区免费| 91一区二区三区四区| 老司机久久99久久精品播放免费| 久久免费精品| 中文字幕一区二区三区日韩精品| 日韩成人亚洲| 国产日产一区| 首页欧美精品中文字幕| 高清在线一区| 国产亚洲欧美日韩在线观看一区二区| 国产99久久| 欧美1区二区| 亚洲精选久久| 在线国产一区| 日韩久久精品| 国产激情久久| 视频一区视频二区中文| 国产精品国产三级国产在线观看| 亚洲三级精品| 99精品综合| 久久精品人人| 日本精品久久| 久久福利影视| 久久精品一区二区不卡| 美日韩一区二区三区| 亚洲精品一级| 99视频精品| 日韩三区免费| 麻豆久久久久久| 日韩一区二区三区免费视频 | 香蕉久久精品| 在线亚洲人成| 久久影院资源站| 91精品一区| 蜜臀精品一区二区三区在线观看| 99久久99久久精品国产片果冰 | 日韩欧美看国产| 久久免费福利| 欧美精品第一区| 日本v片在线高清不卡在线观看| 女同性一区二区三区人了人一| 国产91欧美| 成人午夜在线| 嫩草伊人久久精品少妇av杨幂 | 成人在线免费观看网站| 精品丝袜久久| 精品三级av在线导航| 欧美亚洲一区二区三区| 日韩一区二区三区免费视频| 亚洲综合色婷婷在线观看| 天堂av在线一区| 日韩视频在线一区二区三区 | 国产九九精品| 欧美三级第一页| 日韩av网站在线观看| 亚洲精品极品| 日韩国产欧美一区二区三区| 日韩精品免费一区二区夜夜嗨| 中文字幕一区二区三区四区久久| 免费日韩精品中文字幕视频在线| 午夜国产精品视频免费体验区| 欧美日韩一二三四| 亚洲激情五月| 欧美资源在线| 蜜桃视频在线观看一区二区| 欧美日韩免费观看一区=区三区| 欧美美女一区| 国产农村妇女精品一区二区| 国产精品毛片在线| 日韩在线播放一区二区| 亚洲免费毛片| 91福利精品在线观看| 国产日本亚洲| 久久中文字幕一区二区| 97精品国产| 99热精品久久| 久久不射中文字幕| 日韩精品亚洲专区| 国产福利资源一区| 成人在线视频免费看| 日韩电影二区| 午夜欧美视频| 日韩中文字幕亚洲一区二区va在线| 一区二区精品| 国产亚洲人成a在线v网站| 免费亚洲一区| 蜜桃精品在线| 亚洲综合不卡| 日韩av一区二| 国产成人精品999在线观看| 欧美黄色网页| 另类激情亚洲| 日韩高清在线观看一区二区| 国产精品s色| 亚洲黄色中文字幕| 日韩欧美一区二区三区在线观看 | 日韩1区2区日韩1区2区| 欧美精品不卡| 日韩不卡视频在线观看| 性一交一乱一区二区洋洋av| 欧美一区=区三区| 高清日韩欧美| 亚洲精华国产欧美| 97久久精品| 欧美日韩视频网站| 男女性色大片免费观看一区二区 | 欧洲av不卡| 一区二区电影在线观看| 免费视频一区二区三区在线观看| 日韩精品一区二区三区免费观看| 国产精品试看| 精品国内亚洲2022精品成人 | 亚洲成人av观看| 亚洲欧美网站在线观看| 成人午夜网址| 免费看精品久久片| 国产一区二区三区四区五区| 国产日韩电影| 亚洲精选成人| av资源中文在线| 亚洲资源在线| 亚洲性色av| 国产一卡不卡| 在线观看免费一区二区| 国产精品黄色| 欧美日韩国产免费观看| 麻豆精品一区二区综合av| 亚洲综合不卡| 国产精品久久久久久久免费观看| 久久大逼视频| 日韩免费av| 国产欧美日韩视频在线| 欧美一区二区三区高清视频| 国产亚洲精品精品国产亚洲综合| 久久中文亚洲字幕| 国产视频一区二区在线播放| 五月天综合网站| 日韩av免费大片| 欧美日韩视频免费看| 欧美日韩国产综合网|