自动化巡检之正则表达式匹配交换机回显内容

一、为什么要使用自动化巡检

随着维护的设备数量的增长,普通人工巡检的弊端也随之显现。人工巡检设备数量多,时间长,易出错。自动化巡检可以快速且持续地监控系统状态,比人工巡检更高效、准确。自动化工具能够在短时间内处理大量数据,且不受人类疲劳、注意力分散或误判的影响。

二、什么是正则表达式

正则表达式(Regular Expression,简称为Regex或RegExp)是一种用于匹配字符串模式的表达式。它是由字符和操作符(有时称为元字符)组成的文本字符串,用于定义搜索、匹配和处理文本的模式

三、使用正则表达式摘取设备回显内容(华三设备举例)

当我们使用python来实施自动化巡检时,涉及到不同厂家、品牌、型号的设备时,会出现回显内容杂乱,我们这个时候可以通过使用正则表达式来摘取我们需要的内容,并通过python中的openpyxl模块写入Excel表格,实现巡检报表化。

下面分别以市面主流厂商华为和华三交换机举例给大家演示:

假设我们需要摘取设备最近五分钟的CPU使用率,根据设备回显内容格式,可以采取如下思路:

设定一个捕获组,用于匹配一个或多个数字(因为CPU利用率可能是两位数)

在捕获组中匹配的数字+最近五分钟的cpu利用率即为我们需要的结果

正则表达式:(\d+)%\s+in last 5 minutes

解释如下:

  1. (\d+):这是一个捕获组,用于匹配一个或多个数字(CPU利用率的百分比)。
  2. %:匹配字面的百分号。
  3. \s+:匹配一个或多个空格。
  4. in last 5 minutes:匹配字面的字符串。

结果验证如下:可以看到结果是我们想要的回显内容,后续可以使用其他模块填入Excel表格

四、使用正则表达式摘取设备回显内容(华为设备举例)

经过对回显内容初步分析,判断出我们需要匹配的值为内存使用率这一行的值,也就是

Memory Using Percentage Is: 14% 这个值,思路如下:

匹配 ”Memory Using Percentage Is:14%“这一行中的数值

正则表达式:Memory Using Percentage Is:\s(\d+)%

解释如下:

  1. Memory Using Percentage Is::匹配文本 "Memory Using Percentage Is:"。
  2. \s+:匹配一个或多个空格。
  3. (\d+):这是一个捕获组,用于匹配一个或多个数字(即内存使用率的百分比)。
  4. %:匹配百分号

结果验证:

关于正则表达式过多内容这里就不一一赘述了,我会上传正则表达式相关文档至文章资源处,另外这里给小伙伴推荐一个网站,平时我自己写正则表达式也经常使用这个网站,用来实时查看正则表达式是否可以满足匹配文本需求,链接:https://regex101.com/

  • 46
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值