-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmonitor.py
41 lines (35 loc) · 1.25 KB
/
monitor.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import os
import smtplib
import requests
import logging
import ctypes
EMAIL_ADDRESS = '[email protected]'
EMAIL_PASSWORD = 'password'
pk = 'http://192.168.42.115:8080'
pz = 'http://192.168.43.106:8085'
pv = 'http://192.168.40.104:8085'
mk = 'http://192.168.42.24:9000'
logging.basicConfig(filename=r'C:\bin\monik.log', level=logging.INFO, format='%(asctime)s:%(levelname)s:%(message)s')
def notify_user():
global system
mbox(f'{system} not responding', " TBD application", 1)
with smtplib.SMTP('smtp.ya.ru', 587) as smtp:
smtp.ehlo()
smtp.starttls()
smtp.ehlo()
smtp.login(EMAIL_ADDRESS, EMAIL_PASSWORD)
subject = f'{system} not responding!'
body = 'Do something for resovle!'
msg = f'Subject: {subject}\n\n{body}'
logging.info('Sending Email...')
smtp.sendmail(EMAIL_ADDRESS, '[email protected]', msg)
def mbox(text, title, style):
return ctypes.windll.user32.MessageBoxW(0, text, title, style)
try:
for sys in (pk, pz, pv, mk):
system = sys #Здесь присваиваем system
r = requests.get(sys, timeout=3)
logging.info(f'{system} is UP')
except Exception as e:
logging.info(f'{system} is DOWN!')
notify_user()