Django日志配置

时间:2013-09-07 13:51:11

标签: django logging

我刚刚完成DJANGO的日志记录工作,并试图找到其他选项,但还没找到我想要的东西。在java.utils.logging中有一个日志记录方法: java.util.logging.Logger.entering

用于在输入方法时调用

java.util.logging.Logger.exiting

离开方法时调用的

。 DJANGO中是否存在这些类型的方法?

另外,目前我在settings.py中设置了以下详细格式设置:

<code>%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s</code>

是否可以获取有关用户的任何信息以自动获取记录,如果存在,则可以使用用户名/电子邮件?

此外,在java中,您可以使用[0]格式化日志消息,并使用对象数组填充变量。 例: log.log( Level.FINER, "processing[{0}]: {1}", new Object[]{ i, list.get(i) } );

DJANGO日志记录中是否存在这种格式?

1 个答案:

答案 0 :(得分:0)

Django刚刚使用了Python的日志框架。

Python日志记录中没有entering / leaving方法,因为不需要它们。例如,你可以做到

logger.debug('Entering')

logger.debug('Leaving')

在方法的开始/返回处,并在格式字符串中使用%(funcName)s来指示正在输入/退出的方法。

如果您想在日志中显示上下文信息(例如用户ID或电子邮件),请参阅this documentation

在Python日志记录中,您不需要传递Object的数组,因为您可以执行类似

的操作
logger.debug('processing [%s]: %s', i, list[i])