人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

linux服務(wù)監(jiān)控及運(yùn)維

發(fā)布日期:2021-12-31 00:25 | 文章來源:腳本之家

一, 安裝psutil 包

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

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

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

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

1.3 進(jìn)入解壓完的目錄:cd psutil-2.1.3/

1.4 啟動安裝: python3 setup.py install

1.5 驗(yàn)證: 在命令窗口輸入 python3,然后 輸入 :

import psutil 不報(bào)錯,則證明安裝 成功

接著輸入:

res = psutil.process_iter()
for var in res:
​ print(var)

則會顯示一堆信息

二,找到操作系統(tǒng)中所有的服務(wù)的name和pid

import psutil
proc_dict = {}
#ID:進(jìn)程名
proc_name = set()
#關(guān)于進(jìn)程的集合,集合去重
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)

三,找到需要監(jiān)控但沒有啟動的服務(wù)

proc_stop = monitor_name - proc_name

即:需要監(jiān)控的服務(wù)name 減去 操作系統(tǒng)中所有服務(wù)的name

四,監(jiān)控服務(wù),如果沒有開啟則自動開啟,[并發(fā)郵件通知工作人員]

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

import psutil
import os
#如果需要發(fā)郵件給通知管理人員可能需要使用 request 和 json
#import request
#import json
import time
time_now = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
#要監(jiān)控的服務(wù)
monitor_name = {'nginx'}
#啟動命令
monitor_map = {'nginx':'service nginx start'}
while True:
    #操作系統(tǒng)中所有進(jìn)程的字典
    proc_dict = {}
    #操作系統(tǒng)中所有的進(jìn)程名集合
    proc_name = set()
    #psutil.process_iter()會返回操作系統(tǒng)下所有進(jìn)程名及進(jìn)程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
    #提取到那個監(jiān)控進(jìn)程沒有啟動
    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')
             #發(fā)郵件給管理人員
             #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)

運(yùn)行之后的效果:

到此這篇關(guān)于linux服務(wù)監(jiān)控及運(yùn)維的文章就介紹到這了,更多相關(guān)linux服務(wù)內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實(shí)時開通

自選配置、實(shí)時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部