用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 使用的更多相关文章

  1. 部署前准备--使用Mysql之Django Debug Toolbar安装以及配置

    python -c "import django ;print(django.__path__);" 查看python的全局配置 vi /usr/local/lib/python3 ...

  2. Django之Django debug toolbar调试工具

    一.安装Django debug toolbar调试工具 pip3 install django-debug-toolbar 如果出错命令为 pip install django_debug_tool ...

  3. 【Django】Django Debug Toolbar调试工具配置

    正在发愁怎么调试Django,就遇到了Django Debug Toolbar这个利器. 先说遇到的问题: 网上也有教程,不过五花八门的,挨个尝试了一遍,也没有成功运行.最后终于找到问题所在: 从开发 ...

  4. PHP调试工具PHP DEBUG TOOLS 使用方法

    一.安装篇安装前的准备环境:必须得先装X-Debug,至于怎样安装X-Debug请看http://www.xdebug.org/docs/install 1. 从http://www.xdebug.o ...

  5. django DEBUG=False

    在django的settings中. 将DEBUG 设置为False. 会出现 #python manage.py runserver 8888 CommandError: You must set ...

  6. django debug

    django_debug_toolbar(略). debug toolbar还不够用,看下面. 1. 在对应的位置设置断点 import pdb pdb.set_trace() 2. runserve ...

  7. Debug Tools

    .NET专用调试工具:MDBG .NET的死锁调试工具:ACorns.Debugging WinDBG+SOS(Windows平台下最强DeBug工具,是解决BUG的最后手段)

  8. linux debug tools

    linux modules: IO schedule.VFS.OOM.memory.net.process schedule kernel debug: perf(IO bound\CPU bound ...

  9. django debug toolbar jquery加载配置

    默认加载谷歌cdn的jquery: 显然国内是会悲剧的. 破解方案: 在settings.py中增加以下配置: DEBUG_TOOLBAR_CONFIG = {"JQUERY_URL&quo ...

  10. Django debug page XSS漏洞(CVE-2017-12794)

    影响版本:1.11.5之前的版本 访问http://your-ip:8000/create_user/?username=<script>alert(1)</script>创建 ...

随机推荐

  1. PhysicsJoint

    1 PhysicsJoint的使用 T09Join.h #ifndef__T09Joint_H__ #define__T09Joint_H__ #include"T32.h" cl ...

  2. 自制Linux 终端 锁屏防窃助手

    很多时候我们不能一直守护在自己的电脑旁边,而且有些文件并不想让别人知道.那么这时候来个锁屏,是再合适不过的了.今天分享一个自制的锁屏工具,如下. 准备 操作系统 : 我这里是ElementaryOS虚 ...

  3. JAVA面向对象-----继承

    类和类之间的常见关系. 既然继承是描述类和类之间的关系,就需要先来了解类和类之间的常见关系 现实生活的整体与部分 举例说明 现实生活 学生 是人 狗 是动物 球队 包含 球员 整体与部分的关系,部分可 ...

  4. 带你深入理解STL之迭代器和Traits技法

    在开始讲迭代器之前,先列举几个例子,由浅入深的来理解一下为什么要设计迭代器. //对于int类的求和函数 int sum(int *a , int n) { int sum = 0 ; for (in ...

  5. [ExtJS5学习笔记]第十九节 Extjs5中通过设置form.Panel的FieldSet集合属性控制多个field集合

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/39209533 官方例子:http://docs.sencha.com/extjs/5. ...

  6. 【ShaderToy】开篇

    写在前面 呜呼,好久没有写博客了,好惭愧.题外话,感觉越大就越想家,希望可以一直和家人在一起,哪怕只是坐在一起不说话也觉得很温暖,一想到要分开眼睛就开始酸,哎.开学还是爬上来老实更新博客学习吧~ 今天 ...

  7. Servlet之Listener监听器

    Servlet2.5规范共有8中Listener接口,6种Event类型 ServletContextListener接口 [接口方法] contextInitialized()与 contextDe ...

  8. 02-Git简单使用

    Git安装(windows) https://code.google.com/p/msysgit/downloads/list 我们使用版本Git-1.7.9版本 百度网盘下载:链接:http://p ...

  9. 初识WCF之使用配置文件部署WCF应用程序

    二月份的开头,小编依旧继续着项目开发之路,开始接触全新的知识,EF,WCF,MVC等,今天小编来简单的总结一下有关于WCF的基础知识,学习之前,小编自己给自己提了两个问题,WCF是什么?WCF能用来做 ...

  10. 【一天一道LeetCode】#92. Reverse Linked List II

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Reverse ...