Hallo liebe Pi-Freunde,
habe seit wenigen Wochen meinen ersten Pi in den Händen. Da ich aber berufllich nicht dazu kam, konnte ich erst vor ein paar Tagen mit dem rumspielen anfangen.
Habe mir gestern einen Seafile Server aufgesetzt, dieser funktioniert auch soweit problemlos. Nach einigem stöbern im Internet bin ich auf das Thema Monitoring gestoßen. Genauer gesagt möchte ich mir gerne Emails vom aktuellen Status, sprich was die Temeratur, die Spannung und den CPU Takt angeht, verschicken lassen. Habe dann im Internet ein Script gefunden welches die Temperatur per Mail verschickt. Habe es dann folgendermaßen angepasst (siehe Code Felder innherhalb des folgenden Codes)
import os
import smtplib
import time
from email.mime.text import MIMEText
### Settings
# SMTP
smptHost = "smtp.example.de"
smtpPort = 587
smtpUser = "raspi@example.com"
smtpPassword = "thisisapassword"
# E-Mail
mailSender = "raspi@example.com"
mailReceiver = "mail@example.com"
# Warning
criticalTemperature = 60 # in degree celsius
###
date = "%02i.%02i.%04i" % (int(time.localtime()[2]), int(time.localtime()[1]), int(time.localtime()[0]))
time = "%02i:%02i:%02i" % (int(time.localtime()[3]), int(time.localtime()[4]), int(time.localtime()[5]))
def getCPUtemperature():
res = os.popen('vcgencmd measure_temp').readline()
return(res.replace("temp=","").replace("'C\n",""))
----- manuell hinzugefügt -------
def getVolts():
res = os.popen('vcgencmd measure_volts').readline()
return(res.replace("volts=","").replace("'V\n",""))
----- manuell hinzugefügt -------
tempFloat = float(getCPUtemperature())
----- manuell hinzugefügt -------
voltsFloat = float(getVolts())
----- manuell hinzugefügt -------
if (tempFloat > criticalTemperature):
server = smtplib.SMTP(smptHost, smtpPort)
server.login(smtpUser, smtpPassword)
value = "Die aktuelle Temperatur des Raspberry Pi liegt bei " + str(tempFloat) + " Grad Celsius." + "\n" + "Zeit: " + time + " am " + date
----- manuell hinzugefügt -------
value = "Die aktuelle Spannung des Raspberry Pi liegt bei " + str(voltsFloat) + " Volt." + "\n" + "Zeit: " + time + " am " + date
----- manuell hinzugefügt -------
msg = MIMEText(value)
msg['Subject'] = "[Warning] Rasperry Pi Temperatur " + str(tempFloat) + " Grad!"
msg['From'] = mailSender
msg['To'] = mailReceiver
server.sendmail(mailSender, mailReceiver, msg.as_string())
server.quit()
Alles anzeigen
Bekomme dann aber keine Mails mehr. Kann mir bitte jemand sagen, was ich falsch gemacht habe bzw. kann mir jemand die richtigen Parameter nennen, die ich eintragen muss um die CPU Spannung (vcgencmd measure_temp,vcgencmd_clock, etc..) und Taktrate auszulesen?
Vielen Dank!!