Loggeo JavaScript en el servidor mediante GET

Hace un tiempo se comentaba en este blog el framework log4javascript para el loggeo de eventos Javascript en el servidor.

El framework tiene todo lo que se le puede pedir a un log de eventos JavaScript no basado en Aspectos:

· Que funcione en todos los navegadores modernos:

Internet Explorer > 6, Firefox > 9, Chrome en sus distintas versiones, Safari…

· Distintas categorías de traceo:

o FATAL: se utiliza para mensajes críticos del sistema, generalmente después de guardar el mensaje el programa abortará.

o ERROR: se utiliza en mensajes de error de la aplicación que se desea guardar, estos eventos afectan al programa pero lo dejan seguir funcionando, como por ejemplo que algún parámetro de configuración no es correcto y se carga el parámetro por defecto.

o WARN: se utiliza para mensajes de alerta sobre eventos que se desea mantener constancia, pero que no afectan al correcto funcionamiento del programa.

o INFO: se utiliza para mensajes similares al modo “verbose” en otras aplicaciones.

o DEBUG: se utiliza para escribir mensajes de depuración, este log no debe estar activado cuando la aplicación se encuentre en producción.

o TRACE: se utiliza para mostrar mensajes con un mayor nivel de detalle que debug.

· Uso de Appenders

Si interesa que las peticiones Ajax de los eventos JavaScript que aterrizan en el servidor no vaya van vía POST si no vía GET, por eso de tener también una traza del log en el Servidor Web basta con modificar una línea de la librería javaScript La línea en cuestión está en el fichero /js/log4javascript.js

xmlHttp.open(“POST”,url,true);

Y hay que sustituirla por esta otra

xmlHttp.open(“GET”,url + “?”+ postData,true);

Hay que tener en cuenta que no es conveniente mandar mensajes muy grandes a través del GET ya que los navegadores e incluso los servidores web tienen limitado la cantidad de caracteres que se pueden enviar por GET aunque el protocolo HTTP no lo restringe: http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.2.1 http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.15

Limitaciones del tamaño de la petición web mediante GET:

  • Microsoft Internet Explorer (Browser): 2,083 caracteres
  • Firefox 1.5.x : No se muestra en la caja de la URL por encima de los 65536 caracteres aunque permite más
  • Safari (Browser): Al menos permite 80000 caracteres
  • El Servidor Web de Apache limita a 8192 byte el tamaño del campo en una request
  • Y el servidor Microsoft Internet Information Server tiene una limitación de 16384 aunque es configurable

Humor:Trabajando en equipo en nuestros primeros Sprints Scrum

Publicado en Humor. Leave a Comment »
A %d blogueros les gusta esto: