我正在尝试使用Django Logging记录数据库查询,但是该日志消息似乎无效。我正在将Django 2.1,Python 3.6和MySQL数据库一起使用。
我的settings.py
:
LOGGING = {
'version': 1,
'formatters': {
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
},
},
'handlers': {
'default': {
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename': SITE_ROOT + '/mylog.log',
'maxBytes': 1024*1024*5, # 5 MB
'backupCount': 5,
'formatter':'standard',
},
},
'loggers': {
'django.db.backends': {
'handlers': ['default'],
'level': 'DEBUG',
'propagate': True
},
}
}
结果日志:
2019-02-07 11:27:17,642 [DEBUG] django.db.backends: (0.000) None; args=None
2019-02-07 11:27:17,642 [DEBUG] django.db.backends: (0.000) None; args=None
2019-02-07 11:27:17,643 [DEBUG] django.db.backends: (0.000) None; args=(2,)
2019-02-07 11:27:17,657 [DEBUG] django.db.backends: (0.000) None; args=(2,)
2019-02-07 11:27:17,670 [DEBUG] django.db.backends: (0.000) None; args=(2,)
2019-02-07 11:27:17,843 [DEBUG] django.db.backends: (0.165) None; args=(2, 2, 2)
如何进行SQL查询?
答案 0 :(得分:0)
聚会晚了一点,但是我碰到了这个问题,并且在django-debug-toolbar的GitHub页面上找到了关于此特定问题的解决方案。显然mysqlclient==1.3.14
可能是罪魁祸首,使用它的另一个版本(我尝试过1.3.12和1.4.4)可以为我解决此问题。
答案 1 :(得分:0)
我遇到了同样的问题。
mysqlclient肯定是有问题的。
我使用的是django 1.11.6,这是旧的«patch»版本。
我刚刚尝试用最新的1.11.x,1.11.29升级django,并且该错误也在这里
因此,升级Django无法修复该错误,因此在Django的1.11.x分支中尚未修复
1.11.6和1.11.29上的mysqlclient版本1.4.6是最后一个没有问题的版本
我创建了问题https://github.com/PyMySQL/mysqlclient-python/issues/441
答案 2 :(得分:0)
此错误已修复。升级Django。 参见https://github.com/django/django/pull/10726