色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用Python對交換機進行自動化巡檢?

網絡技術干貨圈 ? 來源:網絡技術干貨圈 ? 2023-01-15 15:33 ? 次閱讀

概述

腳本功能功能是全程模擬了人的手工巡檢,并收集數據,處理后發送郵件。主要分為遠程到交換機,查看轉換機狀態如:show process cpu | in CPU utilization查看cpu占用率;將查詢后的結果記錄并保存下來,如結果;11%;讀取查詢的數據文件;將文件中的數據如11%提取部分需要計算出來;創建excel表格,將上一步獲取到的數據填寫到表格中;編寫固定格式的郵件內容,并將保存好的excel表格附到郵件中發送;編寫crontab定時任務,實現全程自動化。

流程圖

ba0e9466-94a4-11ed-bfe3-dac502259ad0.png
'''
Author:myfu
Date:2019-08-26
E-mail:myfu@****.com

'''

importpexpect
importsys
importtime
importos
importxlwt
defcisco_check():
ip=["10.3.240.14","10.3.240.15","10.3.240.17","10.3.240.20","10.3.240.21"]
name=["SZNS-KJY4F-ACS-05#","SZNS-KJY4F-ACS-06#","SZNS-KJY4F-ACS-08#","SZNS-KJY9F-ACS-11#","SZNS-KJY9F-ACS-12#"]
stat_time=time.time()
stru_time=time.localtime(stat_time)
strf_time=time.strftime("%Y-%m-%d")
foriinrange(0,len(ip)):
child=pexpect.spawn('sshfumy@%s'%ip[i])
fout=open('/root/switch_check/%s.txt'%(name[i][:-1]),'wb+')
child.logfile=fout
ifip[i]=="10.3.240.21":
child.expect("fumy@10.3.240.21'spassword:")
else:
child.expect('password:')
child.sendline("你自己的密碼")
child.expect("%s"%name[i])
child.sendline("shenvpower")
child.expect("%s"%name[i])
child.sendline("showprocesscpu|inCPUutilization")
child.expect("%s"%name[i])
child.sendline("shversion|inuptime")
child.expect("%s"%name[i])
child.sendline("showprocessesmemory|inUsed")
child.expect("%s"%name[i])
child.sendline("shenvfan")
child.expect("%s"%name[i])
child.sendline("shlog|inConsolelogging")
child.expect("%s"%name[i])
child.sendline("exit")
time.sleep(3)

file_list=os.listdir("/root/switch_check")

withopen("/root/switch_check/%s"%file_list[0])asf1:
foriinf1:
if"POWER"ini:
power1=i[8:].strip()
if"CPUutilization"ini:
cpu1=i[72:].strip()
if"%suptimeis"%file_list[0][:-4]ini:
uptime1="".join(i[27:].strip().split(","))
if"ProcessorPoolTotal:"ini:
memory1="%.2f%%"%((int(i[38:50].strip())/int(i[21:33].strip()))*100)
if"FANis"ini:
fan1=i[6:].strip()
if"leveldebugging"ini:
log1=i[37:43].strip()

withopen("/root/switch_check/%s"%file_list[1])asf2:
foriinf2:
if"POWER"ini:
power2=i[8:].strip()
if"CPUutilization"ini:
cpu2=i[72:].strip()
if"%suptimeis"%file_list[1][:-4]ini:
uptime2="".join(i[27:].strip().split(","))
if"ProcessorPoolTotal:"ini:
memory2="%.2f%%"%((int(i[38:50].strip())/int(i[21:33].strip()))*100)
if"FANis"ini:
fan2=i[6:].strip()
if"leveldebugging"ini:
log2=i[37:43].strip()

withopen("/root/switch_check/%s"%file_list[2])asf3:
foriinf3:
if"POWER"ini:
power3=i[8:].strip()
if"CPUutilization"ini:
cpu3=i[72:].strip()
if"%suptimeis"%file_list[2][:-4]ini:
uptime3="".join(i[27:].strip().split(","))
if"ProcessorPoolTotal:"ini:
memory3="%.2f%%"%((int(i[38:50].strip())/int(i[21:33].strip()))*100)
if"FANis"ini:
fan3=i[6:].strip()
if"leveldebugging"ini:
log3=i[37:43].strip()

withopen("/root/switch_check/%s"%file_list[3])asf4:
foriinf4:
if"POWER"ini:
power4=i[24:].strip()
if"CPUutilization"ini:
cpu4=i[72:].strip()
if"%suptimeis"%file_list[3][:-4]ini:
uptime4="".join(i[27:].strip().split(","))
if"Total:"ini:
memory4="%.2f%%"%((int(i[21:29].strip())/int(i[6:14].strip()))*100)
if"FANis"ini:
fan4=i[6:].strip()
if"leveldebugging"ini:
log4=i[37:45].strip()


withopen("/root/switch_check/%s"%file_list[4])asf5:
foriinf5:
if"POWER"ini:
power5=i[24:].strip()
if"CPUutilization"ini:
cpu5=i[72:].strip()
if"%suptimeis"%file_list[4][:-4]ini:
uptime5="".join(i[27:].strip().split(","))
if"Total:"ini:
memory5="%.2f%%"%((int(i[21:29].strip())/int(i[6:14].strip()))*100)
if"FANis"ini:
fan5=i[6:].strip()
if"leveldebugging"ini:
log5=i[37:44].strip()

workbook=xlwt.Workbook(encoding='utf-8')
cisco=workbook.add_sheet('深圳網絡設備巡檢')

style=xlwt.XFStyle()
pattern=xlwt.Pattern()
pattern.pattern=xlwt.Pattern.SOLID_PATTERN
pattern.pattern_fore_colour=xlwt.Style.colour_map['red']
style.pattern=pattern
borders=xlwt.Borders()
borders.left=1
borders.right=1
borders.top=1
borders.bottom=1
style.borders=borders
al=xlwt.Alignment()
al.horz=0x02
al.vert=0x01
style.alignment=al

style1=xlwt.XFStyle()
borders=xlwt.Borders()
borders.left=1
borders.right=1
borders.top=1
borders.bottom=1
style1.borders=borders
al=xlwt.Alignment()
al.horz=0x02
al.vert=0x01
style1.alignment=al

style3=xlwt.XFStyle()
borders=xlwt.Borders()
borders.left=1
borders.right=1
borders.top=1
borders.bottom=1
style3.borders=borders
al=xlwt.Alignment()
al.horz=0x02
al.vert=0x01
style3.alignment=al

first_col=cisco.col(0)
sec_col=cisco.col(1)
thr_col=cisco.col(2)
for_col=cisco.col(3)
first_col.width=200*25
sec_col.width=120*25
thr_col.width=120*25
for_col.width=320*25

cisco.write(0,0,'設備名稱',style)
cisco.write(0,1,'管理地址',style)
cisco.write(0,2,'檢查項',style)
cisco.write(0,3,'檢查結果',style)
cisco.write_merge(1,6,0,0,'%s'%file_list[0][:-4],style3)
cisco.write_merge(1,6,1,1,'%s'%ip[0],style3)
cisco.write(1,2,'電源狀態',style1)
cisco.write(2,2,'cpu使用率',style1)
cisco.write(3,2,'運行時間',style1)
cisco.write(4,2,'內存使用率',style1)
cisco.write(5,2,'風扇狀態',style1)
cisco.write(6,2,'日志條目',style1)
cisco.write(1,3,power1,style3)
cisco.write(2,3,cpu1,style3)
cisco.write(3,3,uptime1,style3)
cisco.write(4,3,memory1,style3)
cisco.write(5,3,fan1,style3)
cisco.write(6,3,log1,style3)

cisco.write_merge(7,12,0,0,'%s'%file_list[1][:-4],style3)
cisco.write_merge(7,12,1,1,'%s'%ip[1],style3)
cisco.write(7,2,'電源狀態',style1)
cisco.write(8,2,'cpu使用率',style1)
cisco.write(9,2,'運行時間',style1)
cisco.write(10,2,'內存使用率',style1)
cisco.write(11,2,'風扇狀態',style1)
cisco.write(12,2,'日志條目',style1)
cisco.write(7,3,power2,style3)
cisco.write(8,3,cpu2,style3)
cisco.write(9,3,uptime2,style3)
cisco.write(10,3,memory2,style3)
cisco.write(11,3,fan2,style3)
cisco.write(12,3,log2,style3)

cisco.write_merge(13,18,0,0,'%s'%file_list[2][:-4],style3)
cisco.write_merge(13,18,1,1,'%s'%ip[2],style3)
cisco.write(13,2,'電源狀態',style1)
cisco.write(14,2,'cpu使用率',style1)
cisco.write(15,2,'運行時間',style1)
cisco.write(16,2,'內存使用率',style1)
cisco.write(17,2,'風扇狀態',style1)
cisco.write(18,2,'日志條目',style1)
cisco.write(13,3,power3,style3)
cisco.write(14,3,cpu3,style3)
cisco.write(15,3,uptime3,style3)
cisco.write(16,3,memory3,style3)
cisco.write(17,3,fan3,style3)
cisco.write(18,3,log3,style3)

cisco.write_merge(19,24,0,0,'%s'%file_list[3][:-4],style3)
cisco.write_merge(19,24,1,1,'%s'%ip[3],style3)
cisco.write(19,2,'電源狀態',style1)
cisco.write(20,2,'cpu使用率',style1)
cisco.write(21,2,'運行時間',style1)
cisco.write(22,2,'內存使用率',style1)
cisco.write(23,2,'風扇狀態',style1)
cisco.write(24,2,'日志條目',style1)
cisco.write(19,3,power4,style3)
cisco.write(20,3,cpu4,style3)
cisco.write(21,3,uptime4,style3)
cisco.write(22,3,memory4,style3)
cisco.write(23,3,fan4,style3)
cisco.write(24,3,log4,style3)

cisco.write_merge(25,30,0,0,'%s'%file_list[4][:-4],style3)
cisco.write_merge(25,30,1,1,'%s'%ip[4],style3)
cisco.write(25,2,'電源狀態',style1)
cisco.write(26,2,'cpu使用率',style1)
cisco.write(27,2,'運行時間',style1)
cisco.write(28,2,'內存使用率',style1)
cisco.write(29,2,'風扇狀態',style1)
cisco.write(30,2,'日志條目',style1)
cisco.write(25,3,power5,style3)
cisco.write(26,3,cpu5,style3)
cisco.write(27,3,uptime5,style3)
cisco.write(28,3,memory5,style3)
cisco.write(29,3,fan5,style3)
cisco.write(30,3,log5,style3)

workbook.save('SZ_NDC_%s.xls'%strf_time)

os.system("mail-a/root/python/SZ_NDC_%s.xls-scheck_test你的郵箱%strf_time)

os.system("find/root/python/-typef-mtime+15-name'SZ_NDC_*'|xargs
m-f")

cisco_check()

mail.txt中的內容即郵件內容:

各位好:



巡檢結果詳情請看附件。









ps:本郵件由系統自動發送,如有任何問題請聯系***





BestWishes

郵件配置

/etc/mail.rc

setfrom=郵箱地址smtp=郵箱服務器smtp-auth-user=郵箱用戶名smtp-auth-password=密碼smtp-auth=login

定時任務

crontab-e

0017**5/usr/bin/python3/root/python/switch_check.py>/dev/null2>&1#每周五下午5點巡檢

最終效果

ba256b1e-94a4-11ed-bfe3-dac502259ad0.png


審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 自動化
    +關注

    關注

    29

    文章

    5678

    瀏覽量

    80182
  • python
    +關注

    關注

    56

    文章

    4813

    瀏覽量

    85316
  • 腳本
    +關注

    關注

    1

    文章

    395

    瀏覽量

    15055

原文標題:如何使用Python對交換機進行自動化巡檢?聰明的網工已經收藏了!

文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    工業交換機的認證

    在當今工業自動化與信息技術快速發展的背景下,工業交換機作為網絡連接的重要設備,扮演著不可或缺的角色。它不僅能夠提高網絡的傳輸效率,還能在復雜的工業環境中,確保數據的可靠傳輸。因此,工業交換機的認證問題顯得尤為重要。
    的頭像 發表于 10-10 14:38 ?313次閱讀

    如何使用反射內存交換機

    反射內存交換機是一種用于實現高速數據共享和通信的關鍵設備,以下是關于如何使用反射內存交換機的詳細介紹:一、前期準備?在開始使用反射內存交換機之前,需要進行以下準備工作:?1.了解系統需
    發表于 09-14 09:23 ?0次下載

    反射內存交換機與普通交換機的區別

    ,實現低延遲、確定性的數據傳輸。普通交換機則依據網絡協議(如以太網協議)進行數據轉發,通常需要軟件參與處理,數據傳輸的延遲和確定性相對較難保證。傳輸速度和延遲:反射
    的頭像 發表于 09-05 09:57 ?792次閱讀
    反射內存<b class='flag-5'>交換機</b>與普通<b class='flag-5'>交換機</b>的區別

    利用Python腳本登錄到交換機并創建VLAN

    本文將詳細介紹如何利用Python腳本登錄到交換機并創建VLAN。
    的頭像 發表于 08-12 17:59 ?710次閱讀

    使用Python腳本備份華為交換機的配置信息

    在現代網絡管理中,備份交換機的配置信息是一項至關重要的任務。備份可以確保在交換機發生故障或配置錯誤時,能夠迅速恢復到之前的工作狀態。本文將詳細介紹如何使用Python腳本備份華為交換機
    的頭像 發表于 08-12 17:50 ?851次閱讀
    使用<b class='flag-5'>Python</b>腳本備份華為<b class='flag-5'>交換機</b>的配置信息

    BIAME汽車制博會看智能制造未來,光路科技Auto Pro工控自動化交換機與全國產TSN交換機展現非凡實力

    第十三屆北京國際汽車制造業博覽會(BIAME)及同期舉辦的智能工廠與自動化工業裝配展覽會圓滿結束,為業界呈現了一場汽車與智能制造的盛會,促進了“汽車+新能源+零部件+智造”領域的深入交流與合作。光路科技在展會上帶來的Auto Pro工業自動化
    的頭像 發表于 08-08 17:48 ?763次閱讀
    BIAME汽車制博會看智能制造未來,光路科技Auto Pro工控<b class='flag-5'>自動化</b><b class='flag-5'>交換機</b>與全國產TSN<b class='flag-5'>交換機</b>展現非凡實力

    二層交換機和三層交換機有什么區別

    交換機分為二層交換機和三層交換機,它們在功能、應用場景和技術實現上有明顯區別。
    的頭像 發表于 08-07 15:33 ?1862次閱讀

    網管型交換機和非網管型交換機的區別

    管理軟件進行配置和管理。它通常具有更多的功能和更高的性能,可以滿足大型網絡的需求。 非網管型交換機(Unmanaged Switch)是一種沒有網絡管理功能的交換機,不能通過軟件進行
    的頭像 發表于 08-05 15:41 ?3314次閱讀

    如何提高工業交換機的電源功耗

    工業交換機的電源功耗是指在工作狀態下所消耗的能量。隨著工業自動化技術的發展,工業交換機在生產和制造領域中扮演著至關重要的角色。它們通過連接各種設備和系統,實現信息的傳輸和處理,提高生產效率和質量
    的頭像 發表于 06-27 14:06 ?346次閱讀

    園區交換機 VS 數據中心交換機

    園區交換機和數據中心交換機交換機領域的兩大類別,很多人都很熟悉。但是,這兩者之間的區別并不是很清楚。在本文中,我們將對園區交換機和數據中心交換機
    的頭像 發表于 06-24 15:33 ?783次閱讀
    園區<b class='flag-5'>交換機</b> VS 數據中心<b class='flag-5'>交換機</b>

    工業交換機的特點和作用

      隨著工業自動化和智能的快速發展,工業交換機作為工業通信領域的重要設備,其地位和作用日益凸顯。工業交換機不僅為工業自動化提供了穩定、可靠
    的頭像 發表于 06-06 11:52 ?1700次閱讀

    工業交換機的組網方式

      隨著工業自動化水平的不斷提升,工業交換機作為連接各種工業設備、實現數據通信的關鍵設備,其組網方式的選擇對于整個工業網絡的性能和穩定性具有至關重要的影響。本文將詳細介紹工業交換機的組網方式,并結合相關數字和信息,對這些組網方式
    的頭像 發表于 06-06 11:52 ?833次閱讀

    交換機的基本分類

      交換機作為網絡通訊中的核心設備之一,其在網絡架構中起著至關重要的作用。隨著信息技術的飛速發展,交換機也在不斷演進和革新,以滿足日益復雜的網絡需求。本文將對交換機的分類及其特點進行
    的頭像 發表于 06-06 11:06 ?2594次閱讀

    工業自動化:PROFINET網絡技術解析與Auto Pro工業交換機應用實踐

    提供了理想的通信解決方案。兼容PROFINET的Auto Pro工業交換機,解決了自動化設備間的兼容問題,還通過優化網絡架構和傳輸技術,確保了數據的高效、穩定傳輸,
    的頭像 發表于 05-17 17:38 ?1102次閱讀
    工業<b class='flag-5'>自動化</b>:PROFINET網絡技術解析與Auto Pro工業<b class='flag-5'>交換機</b>應用實踐

    工業交換機如何進行網絡診斷

    工業交換機在網絡中扮演著重要角色,其穩定運行對于整個工業網絡的正常運轉至關重要。當工業交換機出現網絡故障時,網絡診斷就顯得尤為重要。網絡診斷是通過對工業交換機的狀態進行分析和監測,找出
    的頭像 發表于 04-09 17:42 ?547次閱讀
    工業<b class='flag-5'>交換機</b>如何<b class='flag-5'>進行</b>網絡診斷
    主站蜘蛛池模板: 国产精品人妻久久无码不卡 | 性色AV一区二区三区咪爱四虎 | 麻豆久久国产亚洲精品超碰热 | 精品亚洲永久免费精品 | 桃花色影院 | 嫩草伊人久久精品少妇AV网站 | 第一福利视频网站在线 | 亚洲AV无码A片在线观看蜜桃 | 亚洲成人三级 | 国产专区青青在线视频 | 国产真实乱对白精彩 | 含羞草国产亚洲精品岁国产精品 | 暖暖 日本 视频 在线观看免费 | 动漫美女的阴 | 美国女孩毛片 | 亚洲中文字幕AV在天堂 | 丰满的女友1在线观看 | 成人精品视频99在线观看免费 | 美女被强奷到抽搐的动态图 | 国产69精品久久久久妇女 | 久久丫线这里只精品 | 末成年美女黄网站色大片连接 | 老牛天天晚上夜噜噜噜 | 欧美 国产 日产 韩国 在线 | 国产欧美另类久久久品 | 秘密教学26我们在做一次吧免费 | 攵女yin乱合集高h | 久久国产亚洲精品AV麻豆 | 妙玉被肉干高H潮文 | 迅雷成人论坛 | 一边捏奶头一边啪高潮会怎么样 | 午夜小视频免费观看 | 国产成人精品免费视频大全办公室 | 免费看a视频 | seba51久久精品 | 美女扒开腿让男生桶爽免费APP | 自拍视频亚洲综合在线精品 | 国语92电影网午夜福利 | 好硬好湿好大再深一点动态图 | 自拍区偷拍亚洲视频 | 乳交高H糙汉宠文 |