婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > linux服務監控及運維

linux服務監控及運維

熱門標簽:撫順移動400電話申請 烏海智能電話機器人 藍點外呼系統 寧夏房產智能外呼系統要多少錢 貴陽教育行業電話外呼系統 400電話申請方案 威海人工外呼系統供應商 做外呼系統的公司違法嗎 在百度地圖標注車輛

一, 安裝psutil 包

1.1、安裝壓縮包:以root身份登陸CentOS依次 執行以下命令:

wget https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz

如果wget 下不下來,則直接在瀏覽器中復制 粘貼鏈接https://pypi.python.org/packages/source/p/psutil/psutil-2.1.3.tar.gz 下載下來,用ftp傳輸工具傳輸到linux上,然后再進行下面的操作

1.2 解壓: tar zxvf psutil-2.1.3.tar.gz

1.3 進入解壓完的目錄:cd psutil-2.1.3/

1.4 啟動安裝: python3 setup.py install

1.5 驗證: 在命令窗口輸入 python3,然后 輸入 :

import psutil 不報錯,則證明安裝 成功

接著輸入:

res = psutil.process_iter()

for var in res:

​ print(var)

則會顯示一堆信息

二,找到操作系統中所有的服務的name和pid

import psutil
proc_dict = {}
#ID:進程名
proc_name = set()
#關于進程的集合,集合去重
for p in psutil.process_iter():
    proc_dict[p.pid] = p.name()
    proc_name.add(p.name())
print(proc_dict)
print('\n\n--------------------------\n')
print(proc_name)


三,找到需要監控但沒有啟動的服務

proc_stop = monitor_name - proc_name

即:需要監控的服務name 減去 操作系統中所有服務的name

四,監控服務,如果沒有開啟則自動開啟,[并發郵件通知工作人員]

 1.使用os.system(命令)啟用 服務。
 完整代碼如下:

import psutil
import os
#如果需要發郵件給通知管理人員可能需要使用 request 和 json
#import request
#import json
import time

time_now = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
#要監控的服務
monitor_name = {'nginx'}
#啟動命令
monitor_map = {'nginx':'service nginx start'}

while True:
    #操作系統中所有進程的字典
    proc_dict = {}

    #操作系統中所有的進程名集合
    proc_name = set()

    #psutil.process_iter()會返回操作系統下所有進程名及進程ID
    for p in psutil.process_iter():
        proc_dict[p.pid] = p.name()
        proc_name.add(p.name())
    print(proc_dict)
    print('\n\n--------------------------\n')
    print(proc_name)

    # monitor_name - proc_name == died process name
    #提取到那個監控進程沒有啟動
    proc_stop = monitor_name - proc_name
    print(proc_stop)
    if proc_stop:
        for p in proc_stop:
             p_status = '停止'
             p_name = p
             data ={p_status,p_name,time_now}
             headers = {'Content-Type':'application/json;charset=utf-8'}
             #send_data = json.dumps(data).encode('utf-8')
             #發郵件給管理人員
             #request.post(url=url,data=send_data,headers=headers)

             os.system(monitor_map[p])
             proc_name = set()

             for p2 in psutil.process_iter():
                 proc_name.add(p2.name())

             if p in proc_name:
                  print("重啟成功")
              else:
                  print("重啟失敗")
 time.sleep(2000)

運行之后的效果:

到此這篇關于linux服務監控及運維的文章就介紹到這了,更多相關linux服務內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:蕪湖 銅川 朝陽 周口 那曲 慶陽 泰州 松原

巨人網絡通訊聲明:本文標題《linux服務監控及運維》,本文關鍵詞  linux,服務,監控,及,運維,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《linux服務監控及運維》相關的同類信息!
  • 本頁收集關于linux服務監控及運維的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 衡山县| 中江县| 龙岩市| 乐都县| 上杭县| 洛隆县| 杭锦旗| 罗山县| 孝昌县| 东阿县| 梅河口市| 新和县| 新化县| 莲花县| 宣化县| 尼勒克县| 娄底市| 龙井市| 都兰县| 南城县| 读书| 蒙城县| 满洲里市| 天津市| 乌审旗| 陵水| 文昌市| 普安县| 绥德县| 临夏市| 历史| 吐鲁番市| 聂拉木县| 江达县| 花垣县| 香格里拉县| 新营市| 浑源县| 漳州市| 蕉岭县| 长岭县|