前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[打造自己的监控系统]利用Django在前端展示Oracle 状态趋势(附源代码)

[打造自己的监控系统]利用Django在前端展示Oracle 状态趋势(附源代码)

作者头像
bsbforever
发布2020-08-19 10:34:39
1.1K0
发布2020-08-19 10:34:39
举报
文章被收录于专栏:时悦的学习笔记

开发环境

操作系统:CentOS 7.4 Python版本 :3.6 Django版本: 1.10.5 操作系统用户:oms 数据处理:pandas 前端展示:highcharts

通过上面我们已介绍了如何定时获取系统Oracle状态语句以及如何利用pandas处理成highcharts识别的格式

这节讲如何让其在前端显示

建立页面的步骤

我们还是通过这张图的步骤来说明如何建立页面

urls.py页面

  • oracle_performance分别为系统状态趋势的页面(以天为单位)
  • performance分别为系统状态趋势的页面(以小时为单位)

views.py

这里以oracle_performance函数做例子讲解

上面的url设定调用views.py里面的oracle_performance函数,该函数讲解如下:

1. 首先判断请求的方法是不是post(提交表单前),如果不是则打开oracle_performance.html页面,charts_oracle_performance为定义的表单,可在forms.py中定义

  1. 如果请求方法为post(提交表单后),首先验证输入是否正确,如果正确则获取相应的ipaddress,tnsname,performance_type等信息,
  2. 接下来根据performance_type的类型(物理读,逻辑读等)调用monitor/command/views_oracleperformance.py文件里面的方法来得到我们想要的数据,这个方法的讲解在昨天的公众号,大家可自行查看
  3. 最后我们将TOP SQL相关的内容封装成字典重定向到相应的template文件中

template文件

这里我们使用highcharts.html文件来显示趋势图

这里通过highcharts来展现数据库性能趋势状态

Django允许在html文件内部使用程for循环的形式来迭代列表

关于oracle_peforance页面就说到这了,performance页面可自行参考源码

效果展示

1.数据库系统状态趋势(天为单位)

首先是表单提交之前的界面

这里选择需要查询的数据库,支持多个数据库同时查询

然后是起止时间以及性能类型

最后可以选择天和周为单位

点击提交后会展示各个数据库该时间段的趋势图


2.数据库系统状态趋势(小时为单位)

首先是表单提交之前的界面

这里选择需要查询的数据库

然后是起止时间以及性能类型

最后是是否比较基线,这个后续会有单独介绍

点击提交后会展示出每天各个时间段的趋势图

源代码位置

欢迎访问我的github主页查看源码

https://github.com/bsbforever/oms_django

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-12-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅必备 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 建立页面的步骤
    • urls.py页面
      • views.py
        • template文件
        • 效果展示
          • 1.数据库系统状态趋势(天为单位)
            • 2.数据库系统状态趋势(小时为单位)
            相关产品与服务
            数据库
            云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档