bob777
Goto Top

Mail bei keinem Ping

Hi

Wie kann ich auf php basis einen ping auf eine webseite / ip losschicken der mir dann bei offline der adresse eine mail sendet?

Content-Key: 207173

Url: https://administrator.de/contentid/207173

Printed on: April 18, 2024 at 07:04 o'clock

Member: falscher-sperrstatus
falscher-sperrstatus May 28, 2013 updated at 16:00:26 (UTC)
Goto Top
Hallo,

in dem du die Komponente mail() mit der Komponente ping() in PHP kombinierst. Beides gibt es ganz nach deinem Geschmack in wohl tausenden Optionen.

Grüße
Member: ticuta1
ticuta1 May 28, 2013 updated at 16:01:35 (UTC)
Goto Top
Member: bob777
bob777 May 28, 2013 at 16:06:47 (UTC)
Goto Top
php und html kann ich ein wenig ;)

deswegen wollte ich das auf den server werfen um meine webseite zu überwachen.

habt ihr mir sowas vll. in deutsch?
Member: falscher-sperrstatus
falscher-sperrstatus May 28, 2013 at 16:08:08 (UTC)
Goto Top
also PHP, HTML und deutsch. OK, nächste Frage, willst du alle 5 minuten F5 drücken?
Member: EvilMoe
EvilMoe May 28, 2013 at 16:13:04 (UTC)
Goto Top
Hallo,

für solche Zwecke kannst du https://www.pingdom.com/ nutzen. Bietet unter anderem auch die gewünschte Funktionen und noch deutlich mehr nette Übersichten wie Statistiken über response time und z.B. der downtime.

Wenn du tatsächlich simple selber bauen solltes, schau dir https://www.cronjob.de/ an.
Dort kannst du dein Script in einem Intervall aufrufen lassen.


Sven
Member: Lochkartenstanzer
Lochkartenstanzer May 28, 2013 updated at 19:45:13 (UTC)
Goto Top
moin

Häng doch dieses bash-skript nach einer Anpassung an Deien Bedürfnisse doch einfach in die crontab:

#!/bin/bash

ping -c 4 8.8.8.8 > /dev/null # try 4 pings and redirect output to /dev/null
if [ $? -eq 0 ]; then
 mailx -s "google ist da"  bob777@bob777.tld
fi

ping -c 4 8.8.8.8 > /dev/null # try 4 pings and redirect output to /dev/null
if [ $? -ne 0 ]; then
 mailx -s "google ist weg"  bob777@bob777.tld
fi

Ich weiß, kein php, aber sollte trotzdem genau das tun, was Du willst.

lks


Nachtrag: Wenn Du es aus php-heraus aufrufst, sollte es auch das tun, was du willst. face-smile
Member: EvilMoe
EvilMoe May 28, 2013 updated at 19:52:31 (UTC)
Goto Top
Hallo,

eine schönere Variante ist:
#!/bin/bash

for i in $@
do
ping -c 1 $i &> /dev/null

if [ $? -ne 0 ]; then
	echo "`date`: ping fehlgeschlagen, $i host ist offline!" | mail -s "$i ist offline!" meine@email.tld 
fi
done

Aufrufen geht dann so (oder halt in die crontab eintragen):
./ping_check.sh google.com 192.168.1.2 meine-domain.tld
Member: Lochkartenstanzer
Lochkartenstanzer May 28, 2013 at 20:28:36 (UTC)
Goto Top
Zitat von @EvilMoe:
eine schönere Variante ist:

jepp. definitiv schöner.

Meins ist als schnell & schmutzig geschrieben. face-smile

lks
Member: filippg
filippg May 28, 2013 at 23:41:20 (UTC)
Goto Top
Hallo,

Aufrufen geht dann so (oder halt in die crontab eintragen):
Es soll ja Leute geben, die das einmal jede Minute (oder noch öfter) aufrufen lassen, den Server mal für 10 Tage vom Internet abklemmen, und sich dann wundern, warum im lokalen Mailer-Daemon 14k Mails hängen - die dieser natürlich dann auch alle brav in ihr Postfach bei welchem-hoster-auch-immer bläst.
Will heißen: zu einem vernünftigen Monitoring-Skript gehört m.E. auch immer eine Unterdrückung von wiederholten Alarmen.

jmsp

Filipp
Member: falscher-sperrstatus
falscher-sperrstatus May 28, 2013 at 23:47:44 (UTC)
Goto Top
Guten Morgen,

wie du am Originalpost sehen kannst wird es soweit wohl momentan sowieso nicht kommen und sonst würde sich wohl direkt ein ordentliches Monitoringsystem anbieten.

Grüße
Member: Lochkartenstanzer
Lochkartenstanzer May 29, 2013 updated at 09:02:53 (UTC)
Goto Top
Zitat von @filippg:
Will heißen: zu einem vernünftigen Monitoring-Skript gehört m.E. auch immer eine Unterdrückung von
wiederholten Alarmen.

Das ist kein monitoring-skript. Das ist einfach nur ein schnellschuß um ein bestimmtes Ziel zu erreichen (mail, wenn server nicht pingbar).

Wenn man Monitoren will, kann man, wenn man es z.B. "bilig" haben will, sich für kleines Geld einen Raspberry Pi (oder was ähnliches) holen und dann z.B. nach der Anleitung von @aqui sich ein monitoring-System zusammenbauen, das alles notwendige kann.

lks

Edit: Stilistische verbesserungen. face-smile
Member: ticuta1
ticuta1 May 29, 2013 at 12:44:28 (UTC)
Goto Top
Für Monitoring würde auch ein Nagios ausreichend sein face-smile
LG, ticuta1
Member: falscher-sperrstatus
falscher-sperrstatus May 29, 2013 at 12:53:52 (UTC)
Goto Top
Zitat von @ticuta1:
Für Monitoring würde auch ein Nagios ausreichend sein face-smile
LG, ticuta1

Wäre aber oversized, auch im Verhältnis zum Anwender.
Member: tonabnehmer
tonabnehmer May 31, 2013 at 12:07:28 (UTC)
Goto Top
Ich würde ein kostenloses Tools bzw. eine kostenlose Edition einer vernünftigen Monitoring Software einsetzen, z. B. ServersAlive oder PRTG. Damit kann man dann prüfen, ob die Webseite wirklich da ist, also HTTP/HTTPS bzw. ob der Inhalt der Webseite stimmt. Was bitte hat ein erfolgreicher PING mit der Verfügbarkeit einer Webseite zu tun?

VH,
tonabnehmer