python 记录linux网速到文件。
import time
from app.utils_ydf import LogManager logger = LogManager('network_monitor').get_logger_and_add_handlers(log_filename='network_monitor.log')
logger_templete7 = LogManager('network_monitor2').get_logger_and_add_handlers(log_filename='network_monitor.log', formatter_template=7, do_not_use_color_handler=True) speed_down = []
speed_up = []
speed_name = [] speed_up_1 = []
speed_down_1 = [] while True:
i = open('/proc/net/dev', 'r').readlines()
for p in i:
p = p.split()
if p[1].isdigit() and p[1] != '0':
index = 0
for i in range(len(speed_name)):
if p[0] == speed_name[i]:
index = i
break
if p[0] in speed_name:
pass
else:
speed_name.append(p[0])
speed_down_1.append(p[1])
speed_up_1.append(p[9])
speed_down.append(0)
speed_up.append(0)
break
speed_down[index] = float(int(p[1]) - int(speed_down_1[index])) / 1000
speed_up[index] = float(int(p[9]) - int(speed_up_1[index])) / 1000
speed_down_1[index] = p[1]
speed_up_1[index] = p[9]
for i in range(len(speed_name)):
# if speed_name[i] == 'eno1:':
if 'eno1:' in speed_name[i]: # 只打印此网卡
logger_templete7.debug(f"网卡:{speed_name[i]}")
msg1 = f"上行: {speed_up[i]}"
msg2 = f'下行: {speed_down[i]}'
if speed_up[i] < 100:
logger.debug(msg1)
elif 100 <= speed_up[i] < 200:
logger.info(msg1)
elif 200 <= speed_up[i] < 300:
logger.warning(msg1)
elif 300 <= speed_up[i] < 400:
logger.error(msg1)
elif 400 <= speed_up[i]:
logger.critical(msg1) if speed_down[i] < 100:
logger.debug(msg2)
elif 100 <= speed_down[i] < 200:
logger.info(msg2)
elif 200 <= speed_down[i] < 300:
logger.warning(msg2)
elif 300 <= speed_down[i] < 400:
logger.error(msg2)
elif 400 <= speed_down[i]:
logger.critical(msg2) time.sleep(1) 网上找的,亲测可用。

python 记录linux网速到文件。的更多相关文章
- [Linux] - 网速测试命令
Windows网速测试方法有很多,或者可以直接使用浏览器去一些网站上搜索测试即可. 在Linux中其实更容易,只需要一行命令即可搞定: curl -s https://raw.githubuserco ...
- python 读取Linux服务器上的文件
使用Python语句,读取Linux远端服务器上的文件打印到控制台的代码实现: 下载包:paramiko import paramiko #服务器信息,主机名(IP地址).端口号.用户名及密码 hos ...
- 笨办法学Python记录--习题15-17 开始读写文件啦
习题15 - 17 打开并读流程: from sys import argv script,filename = argv txt = open(filename) print "Here' ...
- 记录Linux下解压大文件时的一次奇葩经历
由于需要安装新的系统,使用wget下载tar包,8G多下载了1个多小时.解压完后的文件夹中的tar包数量明显不够,而且原始的tar包竟然不见了. 同样的操作又进行了一次,结果还是一样,不得不怀疑是哪里 ...
- 记录linux 生成crash dump文件步骤
执行文件编译时加入-g 命令 例如 g++ -g test.cpp 查看当前系统限制情况 ulimit -a 设置crash dump 文件大小 ulimit -c unlimited unlimit ...
- [转]使用Linux命令行测试网速
装speedtest-cli speedtest-cli是一个用Python编写的轻量级Linux命令行工具,在Python2.4至3.4版本下均可运行.它基于Speedtest.net的基础架构来测 ...
- 使用Linux命令行测试网速
安装speedtest speedtest是一个用Python编写的轻量级Linux命令行工具,在Python2.4至3.4版本下均可运行.它基于Speedtest.net的基础架构来测量网络的上/下 ...
- 使用Linux命令行测试网速-----speedtest-cli
https://github.com/sivel/speedtest-cli 当发现上网速度变慢时,人们通常会先首先测试自己的电脑到网络服务提供商(通常被称为“最后一公里”)的网络连接速度.在可用于测 ...
- Linux命令行测试网速speedtest.net
Linux命令行测试网速speedtest.net 当发现上网速度变慢时,人们通常会先首先测试自己的电脑到网络服务提供商(通常被称为"最后一公里")的网络连接速度.在可用于测试宽带 ...
随机推荐
- 配置魔药 [NOIP模拟] [DP] [费用流]
问题描述在<Harry Potter and the Chamber of Secrets>中,Ron 的魔杖因为坐他老爸的 Flying Car 撞到了打人柳,不幸被打断了,从此之后,他 ...
- PhantomJS、CasperJS安装配置图文详解
目前网站主流的加载方式: 一种是同步加载:另一种是异步加载,也即我们常说的用ajax.对于同步加载的网站,普通的爬虫程序轻松就能搞定.但是对于那种异步请求数据的网站,通常使用selenium+Phan ...
- Ruby语法基础(二)
Ruby语法基础(二) 继续ruby的学习,这次主要把目光放到运算符,条件判断,循环,方法,以及其他ruby特有的基本概念上 运算符 算术运算符:+,-,/,%,**,值的注意的是,ruby中一切皆为 ...
- Java爬取校内论坛新帖
Java爬取校内论坛新帖 为了保持消息灵通,博主没事会上上校内论坛看看新帖,作为爬虫爱好者,博主萌生了写个爬虫自动下载的想法. 嗯,这次就选Java. 第三方库准备 Jsoup Jsoup是一款比较好 ...
- python接口自动化29-requests-html支持JavaScript渲染页面
前言 requests虽好,但有个遗憾,它无法加载JavaScript,当访问一个url地址的时候,不能像selenium一样渲染整个html页面出来. requests-html终于可以支持Java ...
- CSS魔法堂:稍稍深入伪类选择器
前言 过去零零星星地了解和使用:link.::after和content等伪类.伪元素选择器,最近看书时发现这方面有所欠缺,于是决定稍微深入学习一下,以下为伪类部分的整理. 伪类 伪类选择器实质上 ...
- nginx -- 单独访问某个页面404
- Dockerfile的 RUN和CMD
在创建Dockerfile的时候,RUN和CMD都是很重要的命令.它们各自的作用分别如下: RUNRUN命令是创建Docker镜像(image)的步骤,RUN命令对Docker容器( containe ...
- Error-MVC: “/”应用程序中的服务器错误。
ylbtech-Error-MVC: “/”应用程序中的服务器错误. 1.返回顶部 1. “/”应用程序中的服务器错误. 运行时错误 说明: 服务器上出现应用程序错误.此应用程序的当前自定义错误设置禁 ...
- iOS:类似于网易云音乐的刷新条目显示弹框
一.介绍 在app中使用刷新控件或者第三方刷新库是最常见的功能,在请求服务器时,获取数据的过程是处于不可见状态的,那么通过这个刷新状态可以给用户以直观的感受,这是增强用户体验的一个相当好的方法.我个人 ...