国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

利用python為運維人員寫一個監控腳本

2020-02-22 23:33:48
字體:
來源:轉載
供稿:網友

前言:

一直想寫一個監控方面的腳本,然后想到了運維這方面的,后來就寫了個腳本,下面話不多說了,來一起看看詳細的介紹吧。

準備:

psutil模塊(基本使用方法可以參考這篇文章://www.jb51.net/article/65044.htm)

正文:

import osimport timeimport reimport smtplibfrom email.mime.text import MIMETextfrom email.header import Headerimport socketimport psutilwhile True: def jianca(): print('[+]Write a port to a file') querys=os.popen('netstat -an').read() wsd=open('netstat.txt','w') wsd.write(querys) wsd.close() jianca()  def swsd(): global usd,ow wsd=open('netstat.txt','r') swd=wsd.read() odf=re.findall('(25[0-5]|2[0-4]/d|[0-1]/d{2}|[1-9]?/d)/.(25[0-5]|2[0-4]/d|[0-1]/d{2}|[1-9]?/d)/.(25[0-5]|2[0-4]/d|[0-1]/d{2}|[1-9]?/d)/.(25[0-5]|2[0-4]/d|[0-1]/d{2}|[1-9]?/d):(3389)',swd) usd=odf[0] print('[+]Query the IP address of a remote connection') df=usd[0],usd[1],usd[1],usd[3] wdst=".".join(df) ow=wdst+":"+usd[4] print(usd[0],'.',usd[1],'.',usd[2],'.',usd[3]+":",usd[4]) swsd()  def ipdw(): global wdf,ip,timsd s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) dw=s.connect(('8.8.8.8',80)) ip=s.getsockname()[0] print('[+]loacl IP:',ip) wdf=os.popen('tasklist').read() timsd=time.strftime('%Y-%m-%d',time.localtime(time.time())) ipdw()  def yunwei(): global cput,cp cput=psutil.cpu_times() cp=psutil.disk_io_counters() yunwei()  def stm(): serder="搜狐郵箱@sina.cn" revw="收件箱@qq.com" zhengwen='[+]Query the IP address of a remote connection''{}/n' /  '[+]loacl IP:{}/n' /  '[+]A program running in the background:{}/n' /  '[+]The user / system / idle time of statistical CPU:{}/n' /  '[+]Disk I/O usage{}/n' /  '[+]Last send time:{}/n' .format(ow,ip,wdf,cput,cp,timsd) msg=MIMEText(zhengwen) msg['From']=Header('你的搜狐郵箱@sina.cn') msg['TO']=Header('收件箱@qq.com','utf-8') sub="實時監控" msg['subject']=Header(sub,'utf-8') try:  smtp=smtplib.SMTP()  smtp.connect('smtp.sina.cn',25)  smtp.login('搜狐郵箱@sina.cn','登錄密碼')  smtp.sendmail(serder,revw,msg.as_string())  print('[+]發送出') except Exception as g:  print('[-]發送失敗,原因:',g) stm()  time.sleep(3600)

實現原理:首先獲取端口狀態,然后寫人一個txt用正則提取出想要的IP和端口。

然后獲取正在后臺運行的程序。在獲取CPU和磁盤I/O的內存,然后通過郵箱發送‘

到指定收件箱。

運行截圖:

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林站長站的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 寿宁县| 泰顺县| 万年县| 郑州市| 甘南县| 克拉玛依市| 弋阳县| 太谷县| 汾阳市| 肥东县| 丰镇市| 靖边县| 镇雄县| 仙桃市| 沾益县| 泗阳县| 巴马| 奉新县| 甘南县| 淮滨县| 崇信县| 满洲里市| 龙山县| 新兴县| 雅江县| 雅安市| 含山县| 南雄市| 东方市| 井研县| 信阳市| 乌拉特中旗| 神农架林区| 平乐县| 呼伦贝尔市| 石嘴山市| 洞头县| 新昌县| 满洲里市| 五莲县| 盘锦市|