记录django中的格式化程序

Dav*_*542 11 python django logging

Django文档中,这是一个用于记录的示例格式:

'formatters': {
    'verbose': {
        'format': '%(levelname)s %(asctime)s %(module)s: %(message)s'
    }
}
Run Code Online (Sandbox Code Playgroud)

这打印如下:

ERROR 2012-05-22 14:33:07,261 views 42892 4398727168你好

是否有可以包含在字符串格式中的项目列表?例如,我希望能够看到创建消息的功能和应用程序,例如:

错误时间myproject.myapp.views.login_function消息

小智 29

Python日志记录模块文档:

  • asctime:创建%(asctime)s
    时的人类可读时间LogRecord.默认情况下,格式为'2003-07-08 16:49:45,896'(逗号后面的数字是毫秒部分时间).

  • created:创建%(created)f
    时间LogRecord(返回时间time.time()).

  • filename:路径名的文件%(filename)s
    名部分.

  • funcName:%(funcName)s
    包含日志记录调用的函数的名称.

  • levelname:%(levelname)s 消息的文本日志记录级别('DEBUG','INFO','WARNING','ERROR','CRITICAL').

  • levelno:%(levelno)s
    消息的数字日志记录级别(DEBUG,INFO,WARNING,ERROR,CRITICAL).

  • lineno:%(lineno)d
    发出日志记录调用的源行号(如果可用).

  • module:%(module)s
    Module(文件名的名称部分).

  • msecs:创建%(msecs)d
    时的毫秒部分LogRecord.

  • message:%(message)s
    记录的消息,计算方式为msg % args.Formatter.format()调用时设置此项.

  • name:%(name)s
    用于记录呼叫的记录器的名称.

  • pathname:%(pathname)s
    发出日志记录调用的源文件的完整路径名(如果可用).

  • process:%(process)d
    进程ID(如果可用).

  • processName:%(processName)s
    进程名称(如果可用).

  • relativeCreated:创建%(relativeCreated)d
    时的时间(以毫秒为单位)LogRecord,相对于加载日志记录模块的时间.

  • thread:%(thread)d
    线程ID(如果可用).

  • threadName:%(threadName)s
    线程名称(如果可用).

以下参数也可用Formatter.format(),但它们不打算包含在格式字符串中:

  • args:
    参数元组合并到msg中以生成消息.

  • exc_info:
    异常元组(àla sys.exc_info)或者,如果没有发生异常,则为None.

  • msg:
    原始日志记录调用中传递的格式字符串.与args合并以生成消息或任意对象(请参阅将任意对象用作消息).