我们知道在java或者.net中大部分都是使用apache的log4…, python里面本身就自带了logging模块。同样在django中也可以用:

1.Setting.py中设置

LOG_FILE = "log.log" 

2.创建utils/log.py:

import logging 
from django.conf import settings 


def getlog(): 
    logger = logging.getLogger() 
    hdlr = logging.FileHandler(settings.LOG_FILE) 
    formatter = logging.Formatter('%(asctime)s %(levelname)s % (message)s') 
    hdlr.setFormatter(formatter) 
    logger.addHandler(hdlr) 
    logger.setLevel(logging.NOTSET) 

    return logger 

3.使用:

from utils import log 
log.getlog().debug("dddddd") 

你就可以看到你的django project的根目录下有一文件log.log 2007-02-13 07:02:07,780 DEBUG dddddd

更多参考: http://www.onlamp.com/pub/a/python/2005/06/02/logging.html

On 2/13/07, map...@gmail.com wrote:

我们知道在java或者.net中大部分都是使用apache的log4…, python里面本身就自带了logging模块。同样在django中也可以用:

嗯嗯嗯!比俺使用的聪明,俺是生硬的直接使用 每个需要的py 中:

import logging 
logging.basicConfig(level=logging.DEBUG, 
                    format='[%(asctime)s]%(levelname)-8s"%(message)s"', 
                    datefmt='%Y-%m-%d %a %H:%M:%S', 
                    filename='bo_update.log', 
                    filemode='a+') 
... 
logging.debug("Line: %s updated..." % (line_ref)) 

实际应用时建议使用

formatter = logging.Formatter('[%(asctime)s]%(levelname)-8s"%(message)s"','%Y-%m-%d 
%a %H:%M:%S') 

这样可以获得 [2007-02-13 Tue 15:50:28]DEBUG “{‘cchoice’: {‘M’: ‘’, ‘V’: ‘’}, ‘uinfo’: {}}” [2007-02-13 Tue 15:50:28]INFO “{‘cchoice’: {‘M’: ‘’, ‘V’: ‘’}, ‘uinfo’: {}}”

这样整齐的日志头…