网络管理 详细讲解

讲一下之前获取CPU的,其余的原理和这个一样

python代码

@app.route('/cpu/')
def cpu_used():cpuoid=ObjectType(ObjectIdentity(myOIDs['cpu_loads']))ret = getTableRows((cpuoid,))cpuload=0for i in ret:cpuload += i[0]print(cpuload)return {'cpu':cpuload}
  var dom = document.getElementById('cpuChart');var myChart = echarts.init(dom, null, {renderer: 'canvas',useDirtyRect: false});var app = {};var option;option = {series: [{type: 'gauge',axisLine: {lineStyle: {width: 30,color: [[0.3, '#67e0e3'],[0.7, '#37a2da'],[1, '#fd666d']]}},pointer: {itemStyle: {color: 'auto'}},axisTick: {distance: -30,length: 8,lineStyle: {color: '#fff',width: 2}},splitLine: {distance: -30,length: 30,lineStyle: {color: '#fff',width: 4}},axisLabel: {color: 'inherit',distance: 40,fontSize: 20},detail: {valueAnimation: true,formatter: '{value}%',color: 'inherit'},data: [{value: 70}]}]};var myurcpu = "http://" + window.location.host+"/cpu/";setInterval(()=>{fetch(myurcpu).then(res=>{return res.json()}).then((json)=>{option.series[0].data[0].value = json.cpu;myChart.setOption(option);})},1000)if (option && typeof option === 'object') {myChart.setOption(option);}window.addEventListener('resize', myChart.resize);

一.路由 

python首先定义一个路由

  

这个参数 cpu 一定是和html代码里面的参数一致

 访问这个网址的时候 python就会执行这个路由下面的函数(cpu_used())并返回这样的数据

 {'cpu':cpuload}

二.python代码

首先  ObjectType 和 ObjectIdentity 不用管  固定格式 用就完了(详细讲解在最后 不看也可以 看也没用) 里面的参数是OID ,全局字典myOIDs里面有

这个OID在MIB里面这里

值是

 

可以看出来有很多值(说明 :

. 1.3.6.1.2.1.25.3.3.1.2  这里我后面没加索引,所以函数会读所有的值

) 

执行完 cpuoid=ObjectType(ObjectIdentity(myOIDs['cpu_loads']))  之后

cpuoid   里面就是

然后

ret = getTableRows((cpuoid,))

就是获取.5 .6 .7 .8 .9  --- .20  对应的所有的值,这里有个逗号是因为这个的参数要求是元组,加一个逗号代表是元组,不然会被按运算符()处理

这样 ret里面就是这边所有的值

cpuload=0
for i in ret:cpuload += i[0]
print(cpuload)
return {'cpu':cpuload}

上面代码就是遍历ret 一个一个加起来就是CPU使用率了

三.html代码

首先

 定义一个div元素用来存放图表

然后就是js代码

首先通过id获取到上面的div元素,id  一定要对应起来  是cpuChart

然后就是初始化配置

里面的data就是一会我们动态获取参数后 填充的地方

最后就是获取数据

刚才也说了,这里的cpu一定要和python定义的路由一样

你可以在网址后面自己实验,加一个CPU看一下是什么结果

 

是这样的

程序也是这样获取的

所以

option.series[0].data[0].value = json.cpu;

就是把后端返回的cpu  渲染到页面上

四.ObjectIdentity,ObjectType

  1. ObjectIdentity 的作用

    • ObjectIdentity 是 pysnmp 库中用于表示 SNMP 中 MIB 对象标识符 的类。
    • 它将接收一个点分十进制格式的字符串(如 1.3.6.1.2.1.25.3.3.1.2)或者 MIB 模块和名称(如 "SNMPv2-MIB", "sysDescr", 0"),并生成对应的 SNMP 查询标识。
  2. ObjectType 的作用

    • ObjectType 接收一个 ObjectIdentity 实例,进一步包装成一个 完整的 SNMP 查询对象
    • ObjectType 主要用于发起 SNMP 请求,并在请求结果中标识数据。
    • 初始化后,cpuoid 将是一个封装了特定 OID(myOIDs['cpu_loads'])的对象,随后会在查询中被使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/494713.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用Python PySide6 复刻了两软件UI 做下练习

图样 1 代码 1: # -*- coding: utf-8 -*-import sys from PySide6.QtCore import (QCoreApplication, QMetaObject, QRect, QDate) from PySide6.QtGui import QIcon, QPixmap, QColor from PySide6.QtWidgets import (QApplication, QDialog, QLineEdit, QPushBut…

【day14】异常处理与Object类深入解析

【day13】回顾 在深入探讨异常处理与Object类之前,让我们回顾一下【day13】中的关键内容: 权限修饰符: public:最广的访问范围,任何地方都可以访问。protected:在同包和子类中可以访问。默认(无…

题解 洛谷 Luogu P1135 奇怪的电梯 广度优先搜索 BFS C/C++

题目传送门: P1135 奇怪的电梯 - 洛谷 | 计算机科学教育新生态https://www.luogu.com.cn/problem/P1135思路: 一道比较裸的 BFS,就是把走迷宫每次搜周围相邻四格,改成了楼层每次搜上下方向的某层而已 感觉这个题难度只有普及- …

苏黎世联邦理工学院与加州大学伯克利分校推出MaxInfoRL:平衡内在与外在探索的全新强化学习框架

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

第146场双周赛:统计符合条件长度为3的子数组数目、统计异或值为给定值的路径数目、判断网格图能否被切割成块、唯一中间众数子序列 Ⅰ

Q1、统计符合条件长度为3的子数组数目 1、题目描述 给你一个整数数组 nums ,请你返回长度为 3 的子数组,满足第一个数和第三个数的和恰好为第二个数的一半。 子数组 指的是一个数组中连续 非空 的元素序列。 2、解题思路 我们需要在给定的数组 nums…

【RAG实战】Prompting vs. RAG vs. Finetuning: 如何选择LLM应用选择最佳方案

在构建基于大型语言模型(LLM)的应用时,通常不可能立即使用模型而无需任何调整。为了保持高实用性,我们可以选择以下几种方法之一: Prompt Engineering(提示工程)Fine-tuning(微调&a…

Odoo:免费开源ERP的AI技术赋能出海企业电子商务应用介绍

概述 伴随电子商务的持续演进,客户对于便利性、速度以及个性化服务的期许急剧攀升。企业务必要探寻创新之途径,以强化自身运营,并优化购物体验。达成此目标的最为行之有效的方式之一,便是将 AI 呼叫助手融入您的电子商务平台。我们…

如何打造用户友好的维护页面:6个创意提升WordPress网站体验

在网站运营中,无论是个人博主还是大型企业网站的管理员,难免会遇到需要维护的情况。无论是服务器迁移、插件更新,还是突发的技术故障,都可能导致网站短暂无法访问。这时,设计维护页面能很好的缓解用户的不满&#xff0…

定位方式:css

使用相对路径 div ul #div下的所有ul,空格表示相对路径(这个实际中用的多一些) 绝对路径-一般不用绝对路径 html>head>div,“>”表示根路径 使用class名称定位 使用.表示 使用id定位 使用#表示 使用属性定位 [属性名…

【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101错误

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7802956.html?templateId1718516 问题现象 某客户的业务在通过YashanDB jdbc驱动查询含有st_geometry列的数据时,报如下异常:YAS-00101 cannot allocate 0 byte…

[Unity]Unity集成NuGet-连接mysql时的发现

本次使用软件信息: Unity:2022.3.34f1c1。 mysql:mysql 8.0 安装于远程服务器。 使用插件:NuGetForUnity4.1.1.unitypackage 点击名称可前往下载界面。 一、导入插件 打开Unity的时候可直接双击导入道assets。导入后如下图&…

重温设计模式--外观模式

文章目录 外观模式(Facade Pattern)概述定义 外观模式UML图作用 外观模式的结构C 代码示例1C代码示例2总结 外观模式(Facade Pattern)概述 定义 外观模式是一种结构型设计模式,它为子系统中的一组接口提供了一个统一…

HDR视频技术之十一:HEVCH.265 的 HDR 编码方案

前文我们对 HEVC 的 HDR 编码优化技术做了介绍,侧重编码性能的提升。 本章主要阐述 HEVC 中 HDR/WCG 相关的整体编码方案, 包括不同应用场景下的 HEVC 扩展编码技术。 1 背景 HDR 信号一般意味着使用更多比特,一般的 HDR 信号倾向于使用 10…

shardingsphere分库分表项目实践1-让shardingsphere运行起来

学习新技术最快的方式就是: 1. 先找一个比较完善的demo跑起来 2. 弄清楚用法:配置、原理、使用场景 3. 移植到自己项目上,按照自己需求进行修改优化。 找demo项目的方法:优先去官方git库找,如果没有或者过于简单那么…

【QSS样式表 - ⑥】:QPushButton控件样式

文章目录 QPushBUtton控件样式QSS示例 QPushBUtton控件样式 常用子控件 常用伪状态 QSS示例 代码: QPushButton {background-color: #99B5D1;color: white;font-weigth: bold;border-radius: 20px; }QPushButton:hover {background-color: red; }QPushButton:p…

layui动态拼接生成下拉框验证必填项失效问题

利用 jQuery 动态拼接下拉框时&#xff0c;lay-verify"required" 失效了&#xff0c;有以下几种原因。 1. <form></form>标签 加入 layui 类&#xff0c;class"layui-form" 。提交按钮上加自动提交&#xff0c;lay-submit ""; 。需…

Vue 92 ,Element 15 ,Vue + el-upload 实现图片上传与管理

目录 前言 一. 文章背景 二. 项目结构 三. 核心代码解析 1. 页面结构 2. 属性介绍 3. 必要参数 4. 函数逻辑 四. 相关样式布局 五. 关键功能解释 六. 注意事项 七. 本文总结 前言 在这篇博客中&#xff0c;我们将深入探讨如何使用 Vue 和 el-upload 构建一个图片上…

安宝特应用 | 美国OSHA扩展Vuzix AR眼镜应用,强化劳动安全与效率

随着工业技术的进步&#xff0c;如何在保障员工安全的同时提高生产效率成为现代企业面临的重要挑战。 美国劳工部职业安全与健康管理局&#xff08;OSHA&#xff09;于2024年12月2日宣布对Vuzix M400智能眼镜进行扩大部署&#xff0c;代表AR技术正为工业环境下的劳动保护开辟了…

linux socket编程之udp_dict_serve服务端--引入配置文件

注意&#xff1a;本篇博客只是对上一篇博客功能的增加 1.创建配置文件(翻译) Dict.txt apple: 苹果 banana: 香蕉 cat: 猫 dog: 狗 book: 书 pen: 笔 happy: 快乐的 sad: 悲伤的 run: 跑 jump: 跳 teacher: 老师 student: 学生 car: 汽车 bus: 公交车 love: 爱 hate: 恨 hell…

HTML基础学习(1)

目录 第一章、基础知识介绍1.1&#xff09;基础知识介绍1.1.1&#xff09;计算机介绍&#xff1a;硬件和软件1.1.2&#xff09;架构介绍1.1.3&#xff09;网站介绍 1.2&#xff09;HTML基础介绍1.2.1&#xff09;HTML创建网页文件与标签1.2.2&#xff09;标签1.2.3&#xff09;…