摘要:一監(jiān)控所有的請(qǐng)求如何實(shí)現(xiàn)系統(tǒng)監(jiān)控,自動(dòng)發(fā)送錯(cuò)誤日志的郵件呢只需配置配置文件即可。設(shè)置發(fā)送郵件配置信息郵件會(huì)發(fā)送到設(shè)定的郵件列表中。
一、監(jiān)控所有的request請(qǐng)求
如何實(shí)現(xiàn)系統(tǒng)監(jiān)控,自動(dòng)發(fā)送錯(cuò)誤日志的郵件呢?
只需配置配置settings文件即可。
1.設(shè)置發(fā)送郵件配置信息郵件會(huì)發(fā)送到ADMINS設(shè)定的郵件列表中。
SERVER_EMAIL ="[email protected]" DEFAULT_FROM_EMAIL ="[email protected]" ADMINS = (("receiver","[email protected]"),) EMAIL_HOST ="smtp.exmail.qq.com" EMAIL_HOST_USER ="[email protected]" EMAIL_HOST_PASSWORD ="123456" EMAIL_BACKEND ="django.core.mail.backends.smtp.EmailBackend"2.配置LOGGING
1)配置mail_admin的handler
level為日志級(jí)別
django.utils.log.AdminEmailHandler為django處理系統(tǒng)日志發(fā)送郵件的handler
在沒(méi)有配置filter參數(shù)情況下,默認(rèn)發(fā)送系統(tǒng)5XX狀態(tài)的錯(cuò)誤日志
"handlers": { "mail_admin": { "level":"ERROR", "class":"django.utils.log.AdminEmailHandler", "include_html":False, } }
2)配置django.request模塊的logger
將django的request模塊配置如上的mail_admin handler
"loggers": { "django.request": { "handlers": ["default","mail_admin"], "propagate":True, "level":"ERROR", }, }
??在這里還是要推薦下我自己建的Python開(kāi)發(fā)學(xué)習(xí)群:725479218,群里都是學(xué)Python開(kāi)發(fā)的,如果你正在學(xué)習(xí)Python ,小編歡迎你加入,大家都是軟件開(kāi)發(fā)黨,不定期分享干貨(只有Python軟件開(kāi)發(fā)相關(guān)的),包括我自己整理的一份2018最新的Python進(jìn)階資料和高級(jí)開(kāi)發(fā)教程,歡迎進(jìn)階中和進(jìn)想深入Python的小伙伴
二、監(jiān)控非request請(qǐng)求如何監(jiān)控例如系統(tǒng)的定時(shí)任務(wù)等非用戶發(fā)起的功能模塊,我們可以自定義一個(gè)decorator來(lái)解決這個(gè)問(wèn)題。
utils.send_exception_email(email_list,title,exc)為發(fā)送郵件的方法,可以自己實(shí)現(xiàn),非常簡(jiǎn)單
def decorator_error_monitor(title): def wrap(f): def wrapped_f(*args,**kwargs): try: result = f(*args,**kwargs) return result except: exc = traceback.format_exc() utils.send_exception_email(email_list,title,exc) raise Exception(exc) return wrapped_f return wrap
對(duì)需要監(jiān)控的方法使用decorator
@decorator_error_monitor("清算錯(cuò)誤") def do_settlement(users): for user in users: process_settlement_for_one_user(user)
效果如下
以上監(jiān)控方法,簡(jiǎn)單實(shí)用,無(wú)需開(kāi)發(fā)額外的日志監(jiān)控系統(tǒng),可以在第一時(shí)間發(fā)現(xiàn)系統(tǒng)的問(wèn)題,并得知系統(tǒng)的錯(cuò)誤日志,幫助快速的定位問(wèn)題。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41875.html
摘要:蠎周刊年度最贊親俺們又來(lái)回顧又一個(gè)偉大的年份兒包去年最受歡迎的文章和項(xiàng)目如果你錯(cuò)過(guò)了幾期就這一期不會(huì)丟失最好的嗯哼還為你和你的準(zhǔn)備了一批紀(jì)念裇從這兒獲取任何時(shí)候如果想分享好物給大家在這兒提交喜歡我們收集的任何意見(jiàn)建議通過(guò)來(lái)吧原文 Title: 蠎周刊 2015 年度最贊Date: 2016-01-09 Tags: Weekly,Pycoder,Zh Slug: issue-198-to...
摘要:擼起袖子,教你干一個(gè)前端監(jiān)控系統(tǒng)還記得在我上一家公司中,某一大佬做了一個(gè)監(jiān)控系統(tǒng),牛逼哄哄,挺想研究他到底是怎么搞出來(lái)的。開(kāi)始基于以上我們就開(kāi)始搭建一個(gè)前端監(jiān)簡(jiǎn)易控平臺(tái)。收集信息要做監(jiān)控系統(tǒng),首先我們得有一個(gè)對(duì)象。 擼起袖子,教你干一個(gè)前端監(jiān)控系統(tǒng) 還記得在我上一家公司中,某一大佬做了一個(gè)監(jiān)控系統(tǒng),牛逼哄哄,挺想研究他到底是怎么搞出來(lái)的。當(dāng)然我們也不是拍拍腦袋干活的人,總不能人家咋干我...
摘要:教程看到這里,你已經(jīng)學(xué)會(huì)如下內(nèi)容搭建開(kāi)發(fā)環(huán)境博文管理用戶管理發(fā)表評(píng)論若干小功能搭建簡(jiǎn)單的小博客,以上的功能夠用了。教程為了起步平緩,沒(méi)有展開(kāi)這方面的內(nèi)容。陌生人,祝你學(xué)業(yè)進(jìn)步事業(yè)有成歡迎常到杜賽的個(gè)人網(wǎng)站做客 教程看到這里,你已經(jīng)學(xué)會(huì)如下內(nèi)容: 搭建開(kāi)發(fā)環(huán)境 博文管理 用戶管理 發(fā)表評(píng)論 若干小功能 搭建簡(jiǎn)單的小博客,以上的功能夠用了。 相信你的志向不止于此。畢竟程序員面試個(gè)個(gè)造火...
閱讀 1533·2021-11-23 09:51
閱讀 3646·2021-09-26 09:46
閱讀 2135·2021-09-22 10:02
閱讀 1849·2019-08-30 15:56
閱讀 3332·2019-08-30 12:51
閱讀 2235·2019-08-30 11:12
閱讀 2069·2019-08-29 13:23
閱讀 2331·2019-08-29 13:16