Скрипт Python, который отслеживает состояние служб systemctl и отправляет электронную почту через sendmail, если он возвPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Скрипт Python, который отслеживает состояние служб systemctl и отправляет электронную почту через sendmail, если он возв

Сообщение Anonymous »

Здесь немного нуб.

Я пытаюсь написать скрипт Python, который по сути будет просматривать подстатус службы с помощью утилиты systemctl, а затем отправьте электронное письмо с помощью sendmail, если он обнаружит, что подстатус НЕ «работает».

Для этого конкретного случая недостаточно просто отобразить, активна ли служба, но и бегает.

У меня есть скрипт, с которым я работал, но изначально он искал статусы URL-адресов, и я изменил его, чтобы просматривать отдельные службы. Я хочу отслеживать 6 различных служб, но отправляю электронное письмо, если какая-либо из них возвращает что-либо, кроме «работает».

Ниже приведен сценарий, который у меня есть:

#!/usr/bin/python

import time
import os
from email.mime.text import MIMEText
from subprocess import Popen, PIPE

#The url being monitored.
service1 = "tomcat"
#service2 = "hostcontext"
#service3 = "ecs-ec"
#service4 = "ecs-ep"
#service5 = "ariel_proxy_server"
#service6 = "ecs-ec-ingress"

#The contents of the email
msg = MIMEText(service1 + " is not responding. Please investigate.")
msg["From"] = "sending address"
msg["To"] = "recipient address"
msg["Subject"] = service1 + "is not responding"

#This loops while the script is running.
# It gets the status returned from the urllib call, if it's not 200 it will email the email contents above.
while True:
status = os.system('systemctl show tomcat -p SubState | sed "s/SubState=//g"')

if status == 'running':
#This is what sends the email. If you don't have sendmail then update this.
p = Popen(["/usr/sbin/sendmail", "-t", "-oi"], stdin=PIPE)
p.communicate(msg.as_string())
#The number of seconds the loop will pause for before checking again. I set it to 60.
time.sleep(60)


Подробнее здесь: https://stackoverflow.com/questions/604 ... il-via-sen
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»