Depurando Google Analytics en Apps

Una de las tareas que realizó una vez al mes (al menos), es la depuración de implementaciones de Google Analytics, ya sea de app o web.

Y lo “peor” que me puede pasar es que me toque depurar una app, básicamente porque es un trabajo bastante más pesado que realizar la depuración de una web.

Dado que muchas veces me preguntan cómo se realiza esta depuración, he querido escribir este post donde se describen los pasos necesarios.

Trataré de que sea lo más conciso posible para no alargar la lectura así que al grano.

Qué necesitas

  1. Ordenador con conexión a internet donde instalar el Charles Proxy
  2. Dispositivo móvil con la app que quieres depurar
  3. Tener descargado e instalado el Charles Proxy (ver metodología)

Enfoque

La idea a la hora de depurar una app, es hacer pasar el tráfico de internet de tu dispositivo móvil a través del ordenador para poder “capturar” en este último los hits que manda la app a Google Analytics y verificar que son correctos.

Metodología

  1. Lo primero que tendremos que hacer por tanto es descargar un servidor proxy a través el cual “enrutaremos” el tráfico de nuestro móvil o tablet a internet. Mi recomendación es usar el Charles que es bueno bonito y barato.

    Una vez descargado lo instalamos y continuamos con el punto 2

    charles-web-debugging-proxy

    Home del Charles Proxy. Bueno, bonito y barato

     

  2. Obtener la dirección ip del ordenador en la red en la que estamos conectados. El punto más peliagudo para quien no lo haya hecho nunca. No, es broma, tenemos que ir al menú “help” y seleccionar “Local IP Address”, apuntamos el número que nos indique.
    Obteniendo mi dirección IP

    Obteniendo mi dirección IP

     

  3. Ahora tenemos que configurar nuestro móvil o tablet para que se conecte a internet a través del proxy. Nos dirigimos a las opciones de wifi, seleccionamos la red a la que estamos conectados y vemos la información de la misma. En el caso de un IOS, basta con clicar el icono de info, dirigirnos al final de la pantalla (proxy http) y seleccionar proxy “manual”.
    Introducimos la dirección IP que copiamos en el punto 2,donde poner “Servidor” y como puerto el 8888

    Añadiendo el proxy para conectarme

    Añadiendo el proxy para conectarme

  4. Ya casi estamos, en el caso de IOS, tendremos que instalar un certificado para poder trabajar con el Charles y conexiones seguras. Para ello hay que ir a  esta dirección (http://www.charlesproxy.com/getssl/) desde el navegador del dispositivo e instalar el certificado. Con esto ya tenemos listo el dispositivo móvil.
    El certificado para IOS del Charles

    El certificado para IOS del Charles


  5. Una vez hecho lo anterior, volvemos al Charles y lo configuramos para que registre conexiones seguras al servidor de Google Analytics. Esto se hace desde “proxy” → “SSL proxy setting”, añadiremos la siguiente url “ssl.google-analytics.com” (sin comillas) otra opción más amplia es poner “*.google-analytics.com” si no estás seguro si la app es Universal Analytics o Clásico. Asegúrate de tener el “enable SSL proxy” activado

    Añadiendo el servidor seguro al proxy

    Añadiendo el servidor seguro al proxy

     

  6. Y ahora a testear, simplemente navega por aplicación y espera que aparezcan los hits de Google Analytics. Para verlos selecciona el hit en el listado y en las pestañas inferiores selecciona “content” para ver lo que se está enviando.

    Hit de Google Analytics en el Charles

    Hit de Google Analytics en el Charles

  7. Es posible que veas muchísimos hits que te generan ruido (imágenes, contenido web etc.) Si quieres filtrarlo tienes que ir a “proxy” → “record settings” → “include”, en esa pestañá puedes añadir el server: *.google-analytics.com con lo que solo recogerás hits a Google Analytics.

Un detalle que tienes que tener en cuenta es que en el caso de las apps, es muy probable que los hits se manden en lotes, es decir varios hits en un solo envío lo cual dificulta la interpretación de los datos ya que tienes que conocer la estructura de un hit para conocer cuándo acaba un hit y empieza el otro.

Detalle de los campos que se mandan en un hit de analytics

Detalle de los campos que se mandan en un hit de analytics

 

Solo puedo decir que con un poco de práctica se acaba sacando, Happy depuración!

Leave Comment

Your email address will not be published. Required fields are marked *