Inevitabil, intr-o zi sau alta, siteul vostru va deveni inaccesibil, si e bine sa fii primul care afla despre asta.

Daca nu sunteti e persoana tehnica, mai bine gasiti un serviciu online care ofera servicii de monitorizare si notificare, deoarece daca cade serverul de care se ocupa de monitorizare, nimeni nu va fi informat. Si in mod evident, serverul de monitorizare si serviciile monitorizare trebuie sa fie absolut independente (adica diferit datacentru, diferita ruta internet).

De mai mult timp am un script care imi trimite notificari SMS cind siteul meu devine inaccesibil, si asa cum cineva m-a rugat sa-l sharuesc, here we go.

Adresa scriptului

https://gist.github.com/816280 (raw)

Modul general de functionare a scriptului

(functia test) Se incearca recuperarea HTMLului paginii si cautare in ea a unor cuvinte cheie. Daca cuvintele cheie nu sunt gasite sau recuperarea nu merge, se incearca dinnou in 30 secunde(linia 45). Daca iara nu merge, are loc o verificare (functia send_sms_delay) daca un SMS nu a fost trimis in ultima ora. Daca nu a fost trimis, se trimite (functia send_sms).

Trimiterea de SMSuri are loc prin serviciul Clickatell.com

Costul spre Moldova e 0.088 EURO per SMS. (tre de cumparat o anumita cantitate de credituri)
Ei pun la dispozitie un API HTTP, ceea ce face posibil trimiterea unui SMS printr-un simplu request HTTP (noi facem asta in linia 39). Va inregistrati, Manage my Products->Get Connections->HTTP, “Add connection” un forumular intuitiv in final veti primi un API ID (de genul 3206821) si un “Example String” cu URL exemplu.

http://api.clickatell.com/http/sendmsg?user=utilizator_clickatell&password=parola_utilizata_la_inregistrare&api_id=apiid&to=numarulSpreCareVorFiTrimisSmsul&text=Mesajul+Smsului

Puteti testa chiar la voi in navigator daca merge, apoi pur si simplu copiati URLul in linia 39.

Editarea scriptului
Peste tot unde vedeti, “# To edit” trebuie de editat.
Comenzile pot fi extrase si executate direct in shell sa vedeti ca rezultatul executarilor e ceea ce doriti.

Scriptul salveaza data ultimului SMS intr-un fisier, deaceea “cd /home/unde_va_fi_scris_fisierul_Care_Salveaza_Ora” puneti un dosar in care scriptul va putea scrie.

In mod normal veti executa din cron fiecare minuta, eu mi-am pus ca executarea sa mearga intre orele 5-23 sa nu ma trezeasca in mijlocul noptii cind e somnul cel mai dulce ;p

#cron
# * 5-23 * * * /home/various/http_alerts.sh >/dev/null 2>&1