django-debug-tools 使用
用django开发很快也很容易,但是很多时候我们的经验并不是很足,就会给自己挖下很多坑,不管是性能问题,还是开发语言使用技巧问题都会给应用的稳定带来危害, 开发之后的调试和调优就显得很重要,今天就尝试使用django-debug-toolbar来给我们的开发增加更多的调试和监控。之前只是听说过,没有具体应用过。
我这里是python1.6。 1.7的配置有点小改动,具体看文档。
安装
使用pip安装
pip install django-debug-toolbar
配置
基本配置
修改settings.py 中的配置
添加app,INSTALLED_APPS添加
INSTALLED_APPS = (
# ...
'django.contrib.staticfiles',
# ...
# If you're using Django 1.7.x or later
'debug_toolbar.apps.DebugToolbarConfig',
# If you're using Django 1.6.x or earlier
'debug_toolbar',
)
还要设置成debug模式
DEBUG = True
文档中说这种配置方式使用runserver 可以,但是其他方式启动可能需要就要更多的配置了。
详细参照 这部分文档。
还有一些高级的自定义配置 configuration. 或者 更多更详细的配置
使用
这里我们就使用默认的配置
启动django的开发服务器。 进入项目中
发现浏览的又上方有个图标,如下图:

点击图标可以看到debug的一些选项如下图。

我们来查看下sql的执行(下图),可以看到sql的执行总时间,多少条,每个sql的执行时间,sql语句等等。 还是很详细的。

小结
从试用的角度来看,debug-tool还是很强大的,给我们的开发和调试带来很多的方面。
jquery配置
今天使用的时候发现里面默认的jquery配置是google的cdn,由于f的原因,我们在settings中配置一个非国外的源
DEBUG_TOOLBAR_CONFIG = {
'JQUERY_URL' : "http://code.jquery.com/jquery-2.1.1.min.js"
}
这样就可以正常使用了。
结合 Pympler 显示内存使用情况
Pympler 是一个用来查看,监控Python 对象内存的一个开发工具。
安装Pymperl
直接使用pip安装就行
pip install pympler
配置
settings.py 文件中需要增加2个配置项
DEBUG_TOOLBAR_PANELS = (
'debug_toolbar.panels.timer.TimerDebugPanel', #这里只选择了一个panels,内置的还有很多
'pympler.panels.MemoryPanel',
)
INSTALLED_APPS = INSTALLED_APPS + ('debug_toolbar', 'pympler')
查看效果
django-debug-tools 的panel中会增加一项Memory的按钮,点击就能看到内存使用的情况了。
django-debug-tools 使用的更多相关文章
- 部署前准备--使用Mysql之Django Debug Toolbar安装以及配置
python -c "import django ;print(django.__path__);" 查看python的全局配置 vi /usr/local/lib/python3 ...
- Django之Django debug toolbar调试工具
一.安装Django debug toolbar调试工具 pip3 install django-debug-toolbar 如果出错命令为 pip install django_debug_tool ...
- 【Django】Django Debug Toolbar调试工具配置
正在发愁怎么调试Django,就遇到了Django Debug Toolbar这个利器. 先说遇到的问题: 网上也有教程,不过五花八门的,挨个尝试了一遍,也没有成功运行.最后终于找到问题所在: 从开发 ...
- PHP调试工具PHP DEBUG TOOLS 使用方法
一.安装篇安装前的准备环境:必须得先装X-Debug,至于怎样安装X-Debug请看http://www.xdebug.org/docs/install 1. 从http://www.xdebug.o ...
- django DEBUG=False
在django的settings中. 将DEBUG 设置为False. 会出现 #python manage.py runserver 8888 CommandError: You must set ...
- django debug
django_debug_toolbar(略). debug toolbar还不够用,看下面. 1. 在对应的位置设置断点 import pdb pdb.set_trace() 2. runserve ...
- Debug Tools
.NET专用调试工具:MDBG .NET的死锁调试工具:ACorns.Debugging WinDBG+SOS(Windows平台下最强DeBug工具,是解决BUG的最后手段)
- linux debug tools
linux modules: IO schedule.VFS.OOM.memory.net.process schedule kernel debug: perf(IO bound\CPU bound ...
- django debug toolbar jquery加载配置
默认加载谷歌cdn的jquery: 显然国内是会悲剧的. 破解方案: 在settings.py中增加以下配置: DEBUG_TOOLBAR_CONFIG = {"JQUERY_URL&quo ...
- Django debug page XSS漏洞(CVE-2017-12794)
影响版本:1.11.5之前的版本 访问http://your-ip:8000/create_user/?username=<script>alert(1)</script>创建 ...
随机推荐
- FFmpeg的HEVC解码器源代码简单分析:概述
===================================================== HEVC源代码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpe ...
- 【java虚拟机系列】从java虚拟机字节码执行引擎的执行过程来彻底理解java的多态性
我们知道面向对象语言的三大特点之一就是多态性,而java作为一种面向对象的语言,自然也满足多态性,我们也知道java中的多态包括重载与重写,我们也知道在C++中动态多态是通过虚函数来实现的,而虚函数是 ...
- Servlet之Session处理
HttpSession 对象中可用的几个重要的方法: 1 public Object getAttribute(String name) 该方法返回在该 session 会话中具有指定名称的对象 ...
- [java面试]逻辑推理6 10 18 32 下一个数?编程实现输入任意一个N位置,该数是多少?java实现
题目: 6 10 18 32 下一个数?编程实现输入任意一个N位置,该数是多少? 10 = 6 + 4 4 18 = 10 + 8 4 + 4 32 = 18 + 14 ...
- C语言中extern关键字的使用
C语言中extern关键字的使用,直接上代码. file1.c文件 #include<stdio.h> extern long power(int); int A = 2; int mai ...
- Cocos2D游戏项目CCTableView在Xcode7.2下的无法滚动问题
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 一个RPG游戏转换到Xcode7.2下发现一个问题,原来可以上 ...
- ElGamal密码
ElGamal也是一种基于离散对数的公钥体制,与Diffie-Hellman密钥体制密切相关.ElGamal密码体系用于数字签名标准(DSS)和S/MIME电子邮件标准等一些技术标准中. 算法描述: ...
- 如何优化MySQL insert性能
对于一些数据量较大的系统,面临的问题除了是查询效率低下,还有一个很重要的问题就是插入时间长.我们就有一个业务系统,每天的数据导入需要4-5个钟.这种费时的操作其实是很有风险的,假设程序出了问题,想重跑 ...
- 我眼中的Linux设备树(五 根节点)
五 根节点一个最简单的设备树必须包含根节点,cpus节点,memory节点.根节点的名字及全路径都是"/",至少需要包含model和compatible两个属性.model属性我们 ...
- μC/OS-II与RT-Thread对比——任务调度
在任务调度器的实现上,μC/OS-II和RT-Thread都采用了位图调度(bitmap scheduling),任务优先级的值越小则代表具有越高的优先级,主要区别在于实现形式,是采用多 ...