Бесплатный мониторинг доступности вашего сайта с SMS-уведомлением

В данной заметке я расскажу о способе мониторинга доступности вашего сайта, используя Google Docs и Google Calendar. В данном решении мы будем получать уведомления не только по почте, но и через SMS. Идея этого способа состоит в том, чтобы создать в Google Docs скрипт, который при возникновении проблемы будет создавать в календаре событие. А , поскольку, Google Calendar имеет возможность присылать SMS сообщения, то проблем в принципе не возникнет.

website-monitor-sms

Итак, если у вас еще нет аккаунта от сервисов Google, то самое время создать его. Далее по шагам:

  1. Скопируйте в ваш Google Docs следующий документ. Для этого просто кликните по ссылке.
  2. Отредактируйте поля Website URLs, Email Address, и в поле SMS введите yes.
  3. После этого в верхнем меню произведите инициализацию и запуск скрипта: WebSite Monitor->Initialize, WebSite Monitor-> Start.
  4. И последним шагом необходимо в Google Calendar привязать свой номер телефона к календарю. Для этого в Google Calendar зайдите в Настройки -> Настройки для мобильных устройств и привяжите номер телефона. После этого у вас появится страница с дополнительными настройками. В ней вы должны поставить галку напротив поле Новые мероприятия.

На этом настройка закончена и в случае, если сайт будет лежать вы получите уведомление и на почту, и посредством SMS.

Исходный код Google-скрипта:

/*

   Website Monitor HD by Digital Inspiration   
   =========================================  

*/

function init() {  
  if (ScriptApp.getScriptTriggers().length == 0) {
    // Set up a monitor that triggers every 5 minutes
    ScriptApp.newTrigger("websiteMonitor")
      .timeBased().everyMinutes(5).create();
  }  
}

function websiteMonitor()
{ 
  var response, error, code, urls;

  // The script can monitor multiple website URLs (comma separated) 
  urls = SpreadsheetApp.getActiveSheet().getRange("B2").getValue();
  urls = urls.replace(/\s/g, "").split(",");

  for (var i=0; i<urls.length; i++)="" {="" var="" url="urls[i];" if="" (!scriptproperties.getproperty(url))="" scriptproperties.setproperty(url,="" 200);="" }="" trying="" to="" connect="" the="" website="" try="" response="UrlFetchApp.fetch(url);" catch(error)="" urlfetchapp="" fails,="" site="" is="" probably="" down="" updatelog(url,="" -1);="" continue;="" code="response.getResponseCode();" code);="" function="" code)="" (scriptproperties.getproperty(url)="=" return;="" sheet="SpreadsheetApp.getActiveSheet();" row="sheet.getLastRow()" +="" 1;="" time="new" date();="" msg="Down" ;="" (code="=" 200)="" "="" url;="" sheet.getrange(row,1).setvalue(time);="" sheet.getrange(row,2).setvalue(msg);="" send="" an="" email="" notification="" when="" status="" changes="" mailapp.sendemail(email,="" msg,="" url);="" now="new" date(time.gettime()="" 10000);="" create="" event="" in="" google="" calendar="" with="" sms="" reminder="" (sheet.getrange("b4").getvalue().tolowercase()="=" "yes")="" calendarapp.createevent(msg,="" now,="" now).addsmsreminder(0);="" *="" published="" by="" amit="" agarwal="" on="" 09="" 14="" 2012="" <="" pre="">

Оставить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *