這篇文章將為大家詳細(xì)講解有關(guān)使用python怎么編寫一個(gè)檢測(cè)nginx服務(wù)郵件的腳本,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

$ cat checkserver.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import socket
import smtplib
from email.mime.text import MIMEText
from email.header import Header
mail_host = "smtp.exmail.qq.com"
mail_user = "yunwei-monitor@111.com"
mail_pass = "yNE8dcsx"
sender = 'yunwei-monitor@111.com'
receivers = ['lixinliang@111.com']
def Checkserverdown():
#三個(gè)參數(shù):第一個(gè)為文本內(nèi)容,第二個(gè) plain 設(shè)置文本格式,第三個(gè) utf-8 設(shè)置編碼
message = MIMEText('192.168.71.200 nginx is down','plain','utf-8')
message['From'] = Header("Nginx is down ", 'utf-8') # 發(fā)送者
message['To'] = Header("李鑫亮", 'utf-8') # 接收者
subject = '192.168.71.200 nginx is down'
message['Subject'] = Header(subject,'utf-8')
try:
smtpobj = smtplib.SMTP()
smtpobj.connect(mail_host,25)
smtpobj.login(mail_user,mail_pass)
smtpobj.sendmail(sender,receivers,message.as_string())
print("郵件發(fā)送成功")
except smtplib.SMTPException:
print("Error: 無(wú)法發(fā)送郵件")
def Checkserverstilldown():
#三個(gè)參數(shù):第一個(gè)為文本內(nèi)容,第二個(gè) plain 設(shè)置文本格式,第三個(gè) utf-8 設(shè)置編碼
message = MIMEText('192.168.71.200 nginx is still down','plain','utf-8')
message['From'] = Header("Nginx is still down ", 'utf-8') # 發(fā)送者
message['To'] = Header("李鑫亮", 'utf-8') # 接收者
subject = '192.168.71.200 nginx is still down'
message['Subject'] = Header(subject,'utf-8')
try:
smtpobj = smtplib.SMTP()
smtpobj.connect(mail_host,25)
smtpobj.login(mail_user,mail_pass)
smtpobj.sendmail(sender,receivers,message.as_string())
print("郵件發(fā)送成功")
except smtplib.SMTPException:
print("Error: 無(wú)法發(fā)送郵件")
def Checkserverup():
#三個(gè)參數(shù):第一個(gè)為文本內(nèi)容,第二個(gè) plain 設(shè)置文本格式,第三個(gè) utf-8 設(shè)置編碼
message = MIMEText('192.168.71.200 nginx is up','plain','utf-8')
message['From'] = Header("Nginx is up ", 'utf-8') # 發(fā)送者
message['To'] = Header("李鑫亮", 'utf-8') # 接收者
subject = '192.168.71.200 nginx is up'
message['Subject'] = Header(subject,'utf-8')
try:
smtpobj = smtplib.SMTP()
smtpobj.connect(mail_host,25)
smtpobj.login(mail_user,mail_pass)
smtpobj.sendmail(sender,receivers,message.as_string())
print("郵件發(fā)送成功")
except smtplib.SMTPException:
print("Error: 無(wú)法發(fā)送郵件")
# 判斷 nginx 進(jìn)程輸出內(nèi)容來(lái)確定是否要進(jìn)行進(jìn)程啟動(dòng)
file = "/tmp/nginx.txt"
os.system("""ps -ef |grep nginx |grep -Ev "grep|vim" > %s""" % file)
print (os.path.getsize(file))
if os.path.getsize(file) == 0:
Checkserverdown()
os.system("/usr/sbin/nginx")
print (os.path.getsize(file))
os.system("""ps -ef |grep nginx |grep -Ev "grep|vim" > %s""" % file)
if os.path.getsize(file) == 0:
Checkserverstilldown()
os.system("/usr/sbin/nginx")
else:
Checkserverup()關(guān)于使用python怎么編寫一個(gè)檢測(cè)nginx服務(wù)郵件的腳本就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
新聞名稱:使用python怎么編寫一個(gè)檢測(cè)nginx服務(wù)郵件的腳本-創(chuàng)新互聯(lián)
本文鏈接:http://www.yijiale78.com/article20/ddhjjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、App開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)、做網(wǎng)站、標(biāo)簽優(yōu)化、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)