lunes, 23 de abril de 2012

Como monitorear tu sitio web con Google Docs

por> ran@googlers.biz
música para leer


Aunque existen varios servicios para estar revisando el comportamiento de nuestros portales o sitios web, especialmente cuando estan activos (up) o cuando están caídos (down), existe un script muy interezante que hace uso de Google Docs con un spreadsheet.

Este script le podemos programar los trigger y que nos envía via email las notificaciones de códigos tal como estatus HTML 200, el cual es una solicitud de éxito del servidor solicitado, o casos tal como sitio caído por un error de DNS no alcanzado.


/**   Monitor your Site's Uptime  **/


/**   By Amit Agarwal 26/03/2012  **/
/**   http://labnol.org/?p=33232  **/


function isMySiteDown()
{
  var url = SpreadsheetApp.getActiveSheet().getRange("E3").getValue();
  
  if (!ScriptProperties.getProperty("status")) {
    ScriptProperties.setProperty("status", 200);
  }
  
  var response, error; 


  try {    
    response = UrlFetchApp.fetch(url);
  } catch(error) 
  {   
    insertData(error, -1, "Website down");
    return;
  }
  
  var code = response.getResponseCode();
  
  if (code == 200) 
    insertData("Up", code, "Website up"); 
  else
    insertData(response.getContent()[0], code, "Website down");
}


function insertData(error, code, msg) {  
  if (ScriptProperties.getProperty("status") == code)
    return;
    
  var sheet = SpreadsheetApp.getActiveSheet();
  var email = sheet.getRange("E5").getValue();
  var row   = sheet.getLastRow() + 1;
  
  sheet.getRange(row,1).setValue(new Date());
  sheet.getRange(row,2).setValue(error);
  sheet.getRange(row,3).setValue(code);
  
  ScriptProperties.setProperty("status", code);
  MailApp.sendEmail(email, msg, error);
}


Los pasos para programarlo son:
1. Hacer click en este enlace del platilla de spreadsheet de Google Docs y hacer un copia en tu cuenta.
2. Llenar la casillas E3 y E5 con la url de tu sitio y email de destino.
3. Ir a Herramientas > Script de Editor > Fuentes > Programar el Trigger, se recomienda usar cada 5 minutos. En mi caso realice una cada 30 minutos y envie inmediato a traves de la casilla de "notificación".

Los resultados en mi caso fueron al portal http://autos.cr y se efectuaron varias notificaciones tal como se muestra seguidamente.

En el caso de que efectues este script y tengas dudas o problemas puedes escribir a:
ran@googlers.biz

No hay comentarios.:

Publicar un comentario