Python 如何向django日志格式化程序传递额外参数
我正在努力做到以下几点:Python 如何向django日志格式化程序传递额外参数,python,django,logging,Python,Django,Logging,我正在努力做到以下几点: # settings.py 'json': { 'format': 'Avails: {"levelname": "%(levelname)s", "asctime": "%(asctime)s", "funcName": "%(funcName)s", "filename": "%(filename)s", "lineno": "%(lineno)s", "message": "%(message)s"}', }, 并且认为:
# settings.py
'json': {
'format': 'Avails: {"levelname": "%(levelname)s", "asctime": "%(asctime)s", "funcName": "%(funcName)s", "filename": "%(filename)s", "lineno": "%(lineno)s", "message": "%(message)s"}',
},
并且认为:
log.info('this is my message', extra={'user': request.user}
如何在日志格式化程序中获取
extra
信息?可以将extra
中的用户作为
'json': {
'format': (
'Avails: {'
'"levelname": "%(levelname)s",'
'"asctime": "%(asctime)s",'
'"funcName": "%(funcName)s",'
'"filename": "%(filename)s",'
'"lineno": "%(lineno)s",'
'"message": "%(message)s",'
'"user": "%(user)s"'
'}',
)
},
请注意您需要在额外选项中为用户而不是用户对象传递字符串值。如果该对象不是字符串对象,则传递的对象的\uuuuu repr\uuuuu
或\uuuu str\uuuu
值将替换格式字符串中的相应转换规范
log.info('this was your message :D', extra={'user': request.user.pk}