メールアラームを使用してのpython3監視サーバーのステータス

  正式な本番環境では、私たちはしばしば、我々はそれを監視する方法をリアルタイム監視ツールのこのタイプは、その後のpythonを使用しZABBIX、多くの場合、我々はNagiosのように使用する、同社のビジネス全体の正常な動作を保証するために、サーバの状態を監視する必要がありますか?ここでは、サーバのメモリ、ディスクを監視するためのpython3コールpsutilとyagmail二つのモジュールを使用し、CPUの状態(と私たちはApacheの実行状態は、ソケットモジュールを使用監視)

メモリ、ディスク、CPUを監視

輸入 psutil

デフ MEM():

MEM = psutil.virtual_memory()

返す MEMを[2]

デフディスク():

ディスク= psutil.disk_usage('/ルート'

リターン・ディスク[3]

デフ CPU():

CPU = psutil.cpu_percent(60)

リターン CPU

= MEM()

B =ディスク()

C = CPU()

輸入 yagmail

YAG = yagmail.SMTP(ユーザー= '[email protected]' パスワード= 'cxboscylplifgadd' ホスト= 'smtp.qq.com'

もし > 80:

(=へyag.send '[email protected]'、=件名'メモリアラーム'、内容= 'できるだけ早くメモリの80%以上を実行してください。'、CC = '[email protected]'

yag.close()

もし B> 70:

yag.send(=に[email protected]、件名= 「警報システムディスク」、目次= 「ディスクシステムは、できるだけ早く70%以上を作る」、CC = [email protected]

yag.close()

もし C> 90:

yag.send(=に'[email protected]' 件名= 'CPUアラーム'、内容= 'できるだけ早くしてください90%以上のCPU'、CC = '[email protected]'

yag.close()

監視Webサービス(アラーム)

輸入ソケット、yagmail

ホスト= [ '192.168.8.137:80' '192.168.8.15:88' ]

socket.setdefaulttimeout(5)

以下のためのホストホスト:

IP = host.split(':')[0]

ポート= host.split(':')[1]

サーバー= socket.socket()

server.connect_exの= RES((IP、INT(ポート))) は、の値を返す 0 の代表、[OK]をない 0 失敗の

もし解像度== 0:

パス

YAG = yagmail.SMTP(ユーザー= '[email protected]' パスワード= 'cxboscylplifgadd' ホスト= 'smtp.qq.com'

(=へyag.send '[email protected]' 件名= '警告'、目次= 'httpdサービス切断要求検出%のS' のIPを、CC = '[email protected]'

yag.close()

  ように私たちの監視スクリプトのPythonスクリプトが完了し、そして今、あなただけの行に定期的にタスクを実行するサーバーを取得する必要があります。今、私たちはそれを検出する必要があります。

 

 定期的なタスクについて編集

 

 、私たちは、ディスク30を決定するために私たちの価値の検証を容易にするために、実際には、我々は40%を使用している、これら二つの文書の上と2.py 1.pyを書かれた2つのスクリプトを記述しますので、あなたは直接警察を呼ぶことができます2 Apacheサーバのポート80と通常の動作状態です。

 

 私たちは、ちょっと待って。

 

 

 

 我々は、それは非常に便利ではありません、2つの警告メッセージを受け取りましたか?

おすすめ

転載: www.cnblogs.com/lxwei0101/p/11701299.html