首先,理论上今天应该进展使用Python到写资料进mySql,但是我发现用来记录log的套件像是logging或是log4mongo不是很好用,如果只是想把log全部存在TXT文件中,也许logging是最快的,
但是呈现在网页中或是未来进行查询是比较麻烦的。而log4mongo是因为我尝试着让他能在blue_print中能执行,
from flask import current_app
current_app.logger.info('hot dog')
可惜并没有成功,最重要的是,多写了这篇能帮助我把天数凑到30天的机率提高一点。
下面可以分享一下目前自订义写log的function:
# !/usr/bin/python
# coding:utf-8
import pymongo
from datetime import datetime
def mongo_logging(info="",user='',level='debug',param=[],func_name=''):
now = datetime.now()
date_time = now.strftime("%m/%d/%Y, %H:%M:%S")
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["logs"]
mycol = mydb["logs_col"]
mydict = { "info": info , "time":date_time ,'level':level,"user":user,"param":param ,"func_name":func_name}
mycol.insert_one(mydict)
跟logging比起来,比较大的差异是logging可以在basicConfig的format直接设定好是程序的哪一只执行党,
哪一个function。
而自订义使用方法,也没有很难,而且多了参数的选项:
mongo_logging(info='Bob bring some food',user=Account,level='info',param=['Account',"food"],func_name='hello()')
而将log写入DB的好处是,有办法依据条件来过滤我们想要的资讯,像是使用者权限、帐号、函数名称等等。
而网页上的呈现,一样可以使用list的型态来呈现:
list(mycol.find(myquery,{ "_id": 0}))
>>: 苹果笔记本开不了机怎麽解决?MacBook维修方案是怎样的?
接下来要使用 ProtoPie Player 来进行分享。 如果 client 端手机或平板已经下载...
补充 今天来做购物车,昨天写 "购买,减少库存" 的时候,我其实几乎忘记有购物车...
更新一下get_iv这支程序 def get_iv(nonce): sha_nonce_value ...
前言 过去总是羡慕具有设计、美术能力的朋友们,都能累积自己的作品集,并自豪地展现给大众。我的工作属於...
一路走来 不知不觉已到了Day30了,这一天说长不长说短不短。 其实大概从Day5开始,就已经觉得很...