Django通过Json配置文件分配多个定时任务

	def load_config():with open("rule.json", 'rb')as f:config = json.load(f)return configdef job(task_name, config, time_interval):# 	...	通过task_name判断进行操作if task_name == 'get_data_times':passdef main():config = load_config()for task_name, task_value in config.items():# 循环配置文件中配置的时间 启动定时任务			多少秒运行一次if task_name.startswith('get_data') or task_name.startswith('get_internet'):time_interval = int(task_value.replace('s', ''))schedule.every(time_interval).seconds.do(job, task_name, config, time_interval)elif task_name.endswith('_time'):# 多少分钟运行一次time_interval = int(task_value.replace('min', ''))time_intervals = time_interval + 1schedule.every(time_interval).minutes.do(job, task_name, config, time_intervals)# 可以设置多个 时分秒 周月星期一到星期天 atdef run_jobs():while True:schedule.run_pending()time.sleep(1)thread = threading.Thread(target=run_jobs)thread.start()if __name__ == '__main__':import django, osos.environ.setdefault("DJANGO_SETTINGS_MODULE", "QsManagement.settings")django.setup()from app01.logger import loggerfrom app01.models import ComputerStatus, AlarmInfo, InterNetSpeed, WindowsError, ProductionLine, Machine, MachineTypefrom app01.methods import get_ipmain()

在这里插入图片描述

json配置文件 通过配置文件设置阈值,到达指定阈值报警

	{"get_data_times": "3min","get_internet_times": "3min","get_windows_error_time": "3min","cpu_time" : "1min","cpu_rate" : "90%","memory_time" : "1min","memory_rate" : "75%","gpu_time" : "1min","gpu_rate" : "50%","disk_times": "3min","C_disk_space": "50G","D_disk_space": "30G","E_disk_space": "50G","F_disk_space": "50G","G_disk_space": "50G","cpu_temperature":  "50度","temperature_time": "1min","internet_speed": "200ms","internet_time" : "1min"}

在这里插入图片描述

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

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

相关文章

C++——stack与queue与容器适配器

1.stack和queue的使用 1.1stack的使用 栈这种数据结构我们应该挺熟了,先入后出,只有一个出口(出口靠栈顶近)嘛 stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类,这些容器类应该支持以操作: empty&#xff1…

专业知识库:中小型企业必备的高效工具

在如今这个信息爆炸的时代,知识管理已经成为了企业运营的重要环节。特别是对于中小型企业来说,如何有效地管理公司内部的知识,提高工作效率,已经成为了一个亟待解决的问题。在这篇文章中,我将向大家介绍一种能够帮助企…

Python轴承故障诊断入门教学

目录 往期精彩内容: 1 工作室实验平台介绍 2 轴承故障诊断教程—数据集 3 轴承故障诊断教程—算法模型 3.1 振动分析方法 3.2 频域特征提取 3.3 时域特征提取 3.4 模型基础的机器学习方法 3.5 深度学习方法 3.6 时频域融合方法 3.7 信号重构方法 3.8 基…

Linux-----文本三剑客补充~

一、模糊匹配 模糊匹配用 ~ 表示包含,!~表示不包含 1、匹配含有root的列 [rootlocalhost ~]#awk -F: /root/ /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [rootlocalhost ~]#awk -F: $1~ /root/ /etc/passw…

知名开发工具RubyMine全新发布v2023.3——支持AI Assistant

RubyMine 是一个为Ruby 和 Rails开发者准备的 IDE,其带有所有开发者必须的功能,并将之紧密集成于便捷的开发环境中。 RubyMine v2023.3正式版下载 新版本改进AI Assistant支持、Rails应用程序和引擎的自定义路径、对Rails 7.1严格locals的代码洞察、RB…

人胰岛素样生长因子-1 ELISA试剂盒IGF-1 (human), ELISA kit

高灵敏ELISA试剂盒,4小时内可得结果,最低可检测34.2 pg/ml的IGF-1 胰岛素样生长因子-1(IGF-1)是一种多肽激素,在结构上与胰岛素相似。它参与调节中枢和周围神经系统的神经元生长和发育。IGF-1是一种有效的神经元凋亡抑…

【Zookeeper】what is Zookeeper?

官网地址:https://zookeeper.apache.org/https://zookeeper.apache.org/ 以下来自官网的介绍 ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. A…

机试复习-3

前言:前面耽误太多时间,2月份是代码月,一定抓紧赶上,每天至少两道题 day1 2024.2.6 1.排序开启: 1.机试考试:排序应用考察 c的qsort c的sort 作用:对数组,vector排序&#…

c#读取csv文件中的某一列的数据

chat8 (chat779.com) 上面试GPT-3.5,很好的浏览网站,输入问题,可得到答案。 问题1:c#如何在csv中读取某一列数据 解答方案:在 C#中,你可以使用File.ReadAllLines来读取CSV中的所有行,然后逐行解析每一行…

flask+vue+python跨区通勤人员健康体检预约管理系统

跨区通勤人员健康管理系统设计的目的是为用户提供体检项目等功能。 与其它应用程序相比,跨区通勤人员健康的设计主要面向于跨区通勤人员,旨在为管理员和用户提供一个跨区通勤人员健康管理系统。用户可以通过系统及时查看体检预约等。 跨区通勤人员健康管…

Linux 分析指定JAVA服务进程所占内存CPU详情

1、获取服务进程PID [rootVM-32-26-centos ~]# service be3Service status Application is running as root (UID 0). This is considered insecure. Running [25383]2、获取进程占用详情 [rootVM-32-26-centos ~]# cat /proc/25383/status Name: java Umask: 0022 State: S…

Linux 文件比较工具

在Linux系统中,文件比较是一种常见的任务,用于比较两个文件之间的差异。文件比较可以帮助我们找出两个文件的不同之处,或者确定它们是否完全相同。在Linux中,有多种方法可以进行文件比较。 1. diff 在Linux中,diff命…

啤酒:精酿啤酒与冷盘的清新搭配

在夏日的傍晚,当太阳逐渐西沉,微风轻轻拂过,与亲朋好友围坐在一起,享受Fendi Club啤酒与冷盘的清新搭配,无疑是一种生活的享受。这两者的结合,不仅为味蕾带来了全新的体验,更为我们带来了片刻的…

24、数据结构/排序相关练习20240206

一、现有无序序列数组为{23,24,12,5,33,5,34,7},请使用以下排序实现编程。 函数1:请使用冒泡排序实现升序排序 函数2:请使用简单选择排序实现升序排序 函数3:请使用快速排序实现升序排序 函数4:请使用插入排序实现…

记录 | linux下切换python版本

查看系统中存在的 python 版本 ls /usr/bin/python* 查看系统默认的 python 版本 python --version

《Git 简易速速上手小册》第3章:分支管理(2024 最新版)

文章目录 3.1 创建与合并分支3.1.1 基础知识讲解3.1.2 重点案例:为 Python 项目添加新功能3.1.3 拓展案例 1:使用 Pull Requests (PRs) 在团队中合作3.1.4 拓展案例 2:解决合并冲突 3.2 分支策略的最佳实践3.2.1 基础知识讲解3.2.2 重点案例&…

git合入的parents和child

最近在管理代码,有2的权限,看到一些以前1看不到的东西。 有时候会遇到多个人基于同一节点提交代码,那就要选择先合入和后合入,如果这多人修改到同一个文件同一个地方,就可能产生冲突,一般要避免这种情况出…

Python进阶----在线翻译器(Python3的百度翻译爬虫)

目录 一、此处需要安装第三方库requests: 二、抓包分析及编写Python代码 1、打开百度翻译的官网进行抓包分析。 2、编写请求模块 3、输出我们想要的消息 三、所有代码如下: 一、此处需要安装第三方库requests: 在Pycharm平台终端或者命令提示符窗口中输入以下代…

可解释性AI(XAI)的主要实现方法和研究方向

文章目录 每日一句正能量前言主要实现方法可解释模型模型可解释技术 未来研究方向后记 每日一句正能量 当你还不能对自己说今天学到了什么东西时,你就不要去睡觉。 前言 随着人工智能的迅速发展,越来越多的决策和任务交给了AI系统来完成。然而&#xff…

必看!嵌入式基于UART的通信协议-RS232、RS485协议解析

这两种都是串口通讯的变种,为了提升串口通信的距离和稳定性。通常来说,正常的串口通信使用的是TTL电平,即高电平为2.4-5V,低电平为0-0.4V。高低电平之间的范围很小,如果有静电或者其他外界的干扰,很快会将低…