Django性能监视工具django-silk的使用

2023-11-02 08:21

本文主要是介绍Django性能监视工具django-silk的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、基本安装配置使用

1.安装 django-silk:

2.在项目的 settings.py 文件中添加以下内容:

3.在 MIDDLEWARE 中添加 silk 中间件,并在 INSTALLED_APPS 中添加 silk 应用程序。

4.在项目的根urls.py 文件中配置 silk

5.执行迁移

6.运行silk应用程序:

7.访问silk应用程序:

二、Profiling(分析)的配置使用

1. 配置SILKY_PYTHON_PROFILER为True

2. 添加装饰器

3. 发送接口请求,打开silk应用程序查看Profiling选项


django-silk 是一个轻量级的 Django 应用性能监视工具,可帮助您了解 Django 应用的性能瓶颈、数据库查询等问题。它可以使用在django前后端分离的项目中,直接通过请求后台API接口即可对性能进行监视。以下是 django-silk 的使用步骤:

一、基本安装配置使用

1.安装 django-silk:

pip install -i https://pypi.douban.com/simple django-silk

2.在项目的 settings.py 文件中添加以下内容:

MIDDLEWARE = [# ...'silk.middleware.SilkyMiddleware',
]

3.在 MIDDLEWARE 中添加 silk 中间件,并在 INSTALLED_APPS 中添加 silk 应用程序。

INSTALLED_APPS = [# ...'silk',
]

4.在项目的根urls.py 文件中配置 silk

urlpatterns += [path('silk/', include('silk.urls', namespace='silk')),
]

将 silk 的 URL 包括到主 URL 配置中。

5.执行迁移

python manage.py makemigrations
python manage.py migrate

6.运行silk应用程序:

启动应用程序,并在浏览器中访问 silk 配置的 URL(默认为 /silk)。这将启动 silk 的 Dashboard 页面。

7.访问silk应用程序:

访问django的任何页面,silk 将捕获有关请求的有用信息,例如请求时间、SQL 查询、HTTP 错误、缓存命中率等等,并将它们显示在 silk 的 Dashboard 上。

您还可以通过单击 silk 的 Dashboard 下部的链接来查看有关每个请求的详细信息,包括 URL、请求参数、请求头、响应时间、SQL 查询、模板渲染时间以及其他相关的信息。

还可点击上图SELECT查看具体的SQL执行

二、Profiling(分析)的配置使用

Django Silk 的 Profiling 功能可以帮助你找出代码中的性能瓶颈和调用顺序,以便更好地进行代码优化。它可以记录每个请求的响应时间、SQL 查询、缓存查询和其他一些详细信息,这些信息可以帮助你了解应用程序的性能状况。

当你首次打开Profiling时,会提示你如何配置使用。

 按上图中继续配置

1. 配置SILKY_PYTHON_PROFILER为True

SILKY_PYTHON_PROFILER = True

2. 添加装饰器

在想要Profiling(分析)的方法上加@silk_profile装饰器

from silk.profiling.profiler import silk_profileclass TestView(View):@silk_profile()  # 为get请求添加装饰器def get(self, request):areas = Area.objects.all()return HttpResponse(areas)

 3. 发送接口请求,打开silk应用程序查看Profiling选项

 点击上图显示在get请求进入Detail页面

 还可查看Queries(查询)选项,查看SQL相关

 再点击上图中的SELECT查询,还可查看执行的SQL语句

 

需要注意的是:在使用 django-silk 时,我们鼓励您在测试、开发环境中使用。在生产生产环境中并不推荐使用,例如生产环境中,您可以将 django-silk 的设置设置为仅在访问时使用特定 cookie 时才显示,并且防止任何敏感信息的显示。

这篇关于Django性能监视工具django-silk的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/329336

相关文章

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中注释使用方法举例详解

《Python中注释使用方法举例详解》在Python编程语言中注释是必不可少的一部分,它有助于提高代码的可读性和维护性,:本文主要介绍Python中注释使用方法的相关资料,需要的朋友可以参考下... 目录一、前言二、什么是注释?示例:三、单行注释语法:以 China编程# 开头,后面的内容为注释内容示例:示例:四

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

ModelMapper基本使用和常见场景示例详解

《ModelMapper基本使用和常见场景示例详解》ModelMapper是Java对象映射库,支持自动映射、自定义规则、集合转换及高级配置(如匹配策略、转换器),可集成SpringBoot,减少样板... 目录1. 添加依赖2. 基本用法示例:简单对象映射3. 自定义映射规则4. 集合映射5. 高级配置匹

Spring 框架之Springfox使用详解

《Spring框架之Springfox使用详解》Springfox是Spring框架的API文档工具,集成Swagger规范,自动生成文档并支持多语言/版本,模块化设计便于扩展,但存在版本兼容性、性... 目录核心功能工作原理模块化设计使用示例注意事项优缺点优点缺点总结适用场景建议总结Springfox 是

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

sqlite3 命令行工具使用指南

《sqlite3命令行工具使用指南》本文系统介绍sqlite3CLI的启动、数据库操作、元数据查询、数据导入导出及输出格式化命令,涵盖文件管理、备份恢复、性能统计等实用功能,并说明命令分类、SQL语... 目录一、启动与退出二、数据库与文件操作三、元数据查询四、数据操作与导入导出五、查询输出格式化六、实用功

使用Python绘制3D堆叠条形图全解析

《使用Python绘制3D堆叠条形图全解析》在数据可视化的工具箱里,3D图表总能带来眼前一亮的效果,本文就来和大家聊聊如何使用Python实现绘制3D堆叠条形图,感兴趣的小伙伴可以了解下... 目录为什么选择 3D 堆叠条形图代码实现:从数据到 3D 世界的搭建核心代码逐行解析细节优化应用场景:3D 堆叠图

Springboot如何正确使用AOP问题

《Springboot如何正确使用AOP问题》:本文主要介绍Springboot如何正确使用AOP问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录​一、AOP概念二、切点表达式​execution表达式案例三、AOP通知四、springboot中使用AOP导出

Navicat数据表的数据添加,删除及使用sql完成数据的添加过程

《Navicat数据表的数据添加,删除及使用sql完成数据的添加过程》:本文主要介绍Navicat数据表的数据添加,删除及使用sql完成数据的添加过程,具有很好的参考价值,希望对大家有所帮助,如有... 目录Navicat数据表数据添加,删除及使用sql完成数据添加选中操作的表则出现如下界面,查看左下角从左