Docs
Ctrl K
Volver al sitio Pedí una demo
DocsDatosExperiencia de usuarios (Aplicaciones)

Experiencia de usuarios (Aplicaciones)

.md

Cómo ven y sienten tus usuarios reales tus sitios y apps: velocidad, errores, visitas y qué datos llegan.

En esta página
Para qué sirveCuándo usarlaLista de aplicacionesDetalle de una aplicaciónConfigurar una aplicaciónAgregar una aplicación (referencia breve)EjemploProblemas comunes

Para qué sirve#

La sección Aplicaciones te muestra cómo les va a las personas que usan tus sitios web y tus apps móviles (Android, iOS y React Native). No mide tus servidores: mide lo que vive el usuario en su navegador o en su celular. Por ejemplo, cuánto tarda en abrir la página de turnos, qué errores le aparecen y en qué pantalla se traba.

A esto se le llama monitoreo de usuarios reales. Cada vez que alguien usa tu sitio o tu app, un pequeño componente instalado en ella manda datos anónimos a Lymen. Cómo se instala ese componente lo explica otra guía; acá vas a ver cómo leer lo que llega.

Cuándo usarla#

  • Cuando recibís un reclamo del tipo "la página anda lenta" o "la app se cierra".
  • Después de publicar una versión nueva, para ver si empeoró algo.
  • Para saber qué pantallas se usan más y cuáles fallan más.
  • Para confirmar que una app recién agregada ya está mandando datos.

Lista de aplicaciones#

Entrás desde el menú Aplicaciones. Ves una tarjeta por cada sitio o app de tu organización.

Arriba tenés el selector de período (hasta 31 días). Si tenés rol de administración o IT, también ves el botón Agregar aplicación. Podés filtrar la lista por etiqueta y, con Elegir varios, etiquetar varias apps juntas (ver Etiquetas).

Qué muestra cada tarjeta#

Elemento Qué significa
Ícono y título Plataforma y nombre, por ejemplo "Web · Turnos online".
Línea gris En una web, el dominio del primer sitio cargado. En una app móvil, el nombre del paquete.
Estado "Recibiendo datos", "Con errores" o "Sin datos todavía" (ver abajo).
Tres números Web: Visitas, Con error y Tiempo de carga. Móvil: Sesiones, Con error y Se cierra sola.
Línea "Android X · iOS Y" Solo en apps React Native: visitas de cada sistema.
Gráfico chico Visitas de las últimas 24 horas.
Último dato Hace cuánto llegó el último dato.

Una visita (o sesión) es una ida de una persona al sitio o la app. La sesión se renueva si pasan 30 minutos sin actividad o a las 4 horas de uso.

Cómo se calcula el estado#

  • Sin datos todavía: no hubo ninguna visita en el período. La tarjeta muestra "Instalación sin terminar": falta pegar el código en la app y abrirla una vez.
  • Con errores: el porcentaje de visitas con error es al menos el doble que en el período anterior y llega como mínimo a 0,5 %. Si no hay período anterior con qué comparar, se marca así cuando supera el 2 % de las visitas.
  • Recibiendo datos: cualquier otro caso con visitas.

Los números "mal" se pintan en rojo: el tiempo de carga cuando su calificación es mala (más de 4 s) y "Se cierra sola" cuando supera el 1 %.

Detalle de una aplicación#

Al tocar una tarjeta entrás al detalle. Arriba tenés:

  • Un selector para pasar a otra aplicación sin volver a la lista.
  • El nombre, el estado y el dominio o paquete.
  • El selector de período.
  • Si es una app React Native, un selector Todas · Android · iOS que filtra todas las pestañas.
  • El botón Configurar (solo administración e IT).

Debajo hay cinco pestañas: Resumen, Páginas (o Pantallas en apps móviles), Errores, Visitas y Datos recibidos.

Pestaña Resumen#

Tarjetas de arriba:

Tarjeta Qué muestra
Visitas Sesiones en el período.
Personas Usuarios distintos. Si el usuario no se identifica, cada visita cuenta como una persona.
Páginas vistas / Pantallas vistas Total y promedio por visita.
Errores que ven tus usuarios Errores por visita. Se pinta ámbar desde 0,2 y rojo desde 1.
Sin que la app se cierre Solo móvil. Porcentaje de visitas sin cierres inesperados (crashes). Verde desde 99,5 %, ámbar desde 98 %, rojo por debajo.

Si todavía no llegó nada, ves "Esperando el primer dato".

Vitales web#

En una web, el resumen muestra los Core Web Vitals: tres mediciones estándar de Google sobre qué tan buena es la experiencia, más dos de apoyo. Cada una tiene un semáforo. El valor que se muestra es el percentil 75: lo que vio el 75 % de tus usuarios (3 de cada 4 visitas). Se usa para que unos pocos casos extremos no distorsionen el número.

Vital En pantalla Qué mide Bien Se puede mejorar Mal
LCP Qué tan rápido carga Cuánto tarda en verse lo principal de la página. hasta 2,5 s hasta 4 s más de 4 s
INP Qué tan rápido responde Cuánto tarda la página en reaccionar cuando tocan un botón, un menú o escriben. hasta 200 ms hasta 500 ms más de 500 ms
CLS Qué tan quieta se ve Si las cosas se corren solas mientras carga. No tiene unidad. hasta 0,1 hasta 0,25 más de 0,25
FCP Cuándo aparece algo Cuánto tarda en aparecer lo primero en pantalla. hasta 1,8 s hasta 3 s más de 3 s
TTFB Cuánto tarda tu servidor Cuánto tarda tu servidor en empezar a responder. hasta 800 ms hasta 1,8 s más de 1,8 s

Los cortes son inclusivos: un valor igual al límite todavía cuenta en el tramo mejor. Cada vital muestra además su evolución en el período, y arriba hay una frase resumen ("Todo bien", "Anda bien, pero ... se puede mejorar" o "Hay que mirar ...").

Si el TTFB es malo, el problema suele estar en el servidor o la red, no en la página. Podés investigarlo con Servicios.

Salud de una app móvil#

En Android, iOS y React Native, en lugar de los vitales web ves Cómo anda la app:

Medición Qué mide Bien Se puede mejorar
Qué tan rápido abre Inicio en frío: abrir la app cuando no estaba abierta (percentil 75). hasta 2 s hasta 5 s
Al volver a la app Inicio tibio: volver cuando quedó en segundo plano. hasta 1 s hasta 2 s
Sin que la app se cierre Visitas que terminan sin crash. desde 99,5 % desde 98 %

Pasado el segundo límite, la medición se marca como mala.

Una app React Native también muestra la tabla Por sistema (Android e iOS): visitas, personas, pantallas vistas, errores por visita y porcentaje sin crashes.

Pestaña Páginas / Pantallas#

Una fila por cada página o pantalla, ordenada por visitas y, si hay empate, por errores. Se muestran hasta 200.

Columna Qué significa
Página / Pantalla En web, la ruta normalizada: /turnos/:id agrupa todos los turnos en una sola fila. En móvil, el nombre de la pantalla.
Visitas Cuántas veces se abrió.
Carga, Respuesta, Estabilidad Solo web: LCP, INP y CLS de esa página, con su semáforo.
Errores Errores ocurridos ahí.
Personas Usuarios distintos.

Tocá una fila para abrir un resumen de esa página.

Pestaña Errores#

Los errores se agrupan: cientos de errores iguales aparecen como una sola fila. Se agrupan con una huella calculada con el tipo de error y el primer punto del código propio donde ocurrió. Se muestran hasta 200 grupos, 20 por página.

Columna Qué significa
Error Tipo y mensaje.
Veces Cuántas veces ocurrió.
Personas Usuarios afectados.
Visitas Visitas afectadas.
Última vez Cuándo pasó por última vez.

Al abrir un error ves cuándo fue la primera y la última vez, las versiones afectadas, Dónde pasó (el detalle técnico, útil para pasarle al equipo de desarrollo) y Últimas veces, con link a la visita y, cuando existe, a la traza del servidor (el recorrido de un pedido por tus sistemas; ver Servicios). Un error puede ser:

  • Error que ven tus usuarios: la app no lo esperaba.
  • Error controlado por la app: la app lo atrapó y lo avisó.
  • La app se cerró sola: un crash en móvil.

Pestaña Visitas#

Lista de las últimas visitas, 20 por página.

Columna Qué significa
Empezó Hora de inicio.
Quién y con qué El usuario (ver nota de privacidad) y el dispositivo, navegador y sistema.
Duró Duración de la visita.
Vistas Páginas o pantallas que abrió.
Errores Errores durante la visita.

Al abrir una visita ves Qué hizo: una línea de tiempo con los momentos de la sesión, como "Abrió /turnos/:id", "Tocó #reservar", "GET /api/turnos · 500" o "La app se cerró sola". Los errores, los crashes y los pedidos fallidos (con error o código 500 o más) se marcan en rojo, y los eventos de negocio se destacan. Cada pedido tiene el link Ver qué pasó en el servidor, que te lleva a la traza. Los tiempos aparecen como "+1 min 20 s" desde el inicio.

Los momentos que puede mostrar son: inicio de sesión, vista, clic, error, crash, app trabada (ANR, en Android), pedido de red, evento de negocio, medición, inicio de la app, página trabada y mensaje de la app (log).

Privacidad. El usuario se muestra como "Usuario" más los primeros 8 caracteres de un código. El componente instalado convierte el identificador en un código irreversible antes de mandarlo, así que nunca se ve el dato original. Si la app no lo identifica, figura "Sin identificar". La dirección IP se recorta antes de guardarse y no se guarda lo que se escribe en los formularios. Más detalles en Privacidad.

Pestaña Datos recibidos#

Sirve para saber si la app está mandando datos y para decidir qué tipos de dato querés recibir.

Tarjeta Qué significa
Eventos recibidos Total en el período.
Último dato Hace cuánto llegó. Se marca en alerta si pasaron más de 15 minutos.
Peso de lo guardado Espacio que ocupan los datos (aproximado o medido). Ver Almacenamiento.
Versión instalada Versión del componente instalado y si hay una más nueva.

También hay un gráfico "Qué llega, hora por hora" y la lista Lo último que llegó, que se refresca sola cada 5 segundos.

La tabla Qué datos recibimos tiene un interruptor Recibir por tipo. Apagar un tipo hace que deje de llegar y no se cobre. El cambio baja a las apps y además el servidor descarta ese tipo si igual llega. Solo administración e IT pueden cambiarlo.

Tipo de dato Qué incluye Estado inicial
Visitas a páginas (en móvil, Pantallas vistas) Cada vez que alguien abre una pantalla. Se recibe
Tiempos de carga (en móvil, Tiempos de inicio) Vitales, inicio de la app y tareas largas. Se recibe
Errores de la página (en móvil, Errores y cierres de la app) Errores, crashes y trabas. Se recibe
Pedidos al servidor Consultas que hace la página al sistema. Se recibe
Clics y acciones Botones, formularios enviados, búsquedas. Se recibe, pero los clics solo se capturan si activás "Capturar clics" en Configurar
Sesiones Cuántas personas usan el sitio y por cuánto tiempo. Se recibe
Mensajes de la app (logs) Textos que la app escribe para diagnosticar. Apagado, porque puede traer texto libre

Los eventos de negocio que mande tu app no se apagan desde acá.

Configurar una aplicación#

El botón Configurar (administración e IT) abre el formulario del sitio. Desde ahí también podés borrar la aplicación.

Campo Valores válidos Impacto
Nombre Hasta 80 caracteres, sin < > { } $ ni barra invertida. Solo cambia cómo se ve en Lymen.
Nombre de servicio Letras, números, punto, guion y guion bajo. Es el nombre con el que se identifica en el resto de Lymen.
Direcciones permitidas (solo web) De 1 a 20, con la forma https://www.ejemplo.com, sin ruta ni barra final. http solo se acepta para pruebas en tu propia máquina. Una web que se abre desde una dirección que no está en la lista no puede mandar datos.
Porcentaje de visitas a medir 100 %, 50 %, 25 % o 10 % (por defecto 100 %). Con menos del 100 % se mide solo una parte de las visitas. Se decide al empezar cada visita, así cada una entra completa o no entra. Ahorra almacenamiento, pero los números pasan a ser una estimación.
Capturar clics Sí o no (por defecto no). Agrega a la línea de tiempo dónde tocó el usuario. Nunca guarda texto escrito.
Direcciones donde enlazar con el servidor Hasta 20, mismo formato que las anteriores. El componente agrega una marca de seguimiento a los pedidos que van a esas direcciones. Así la traza del navegador se une con la del servidor y funciona "Ver qué pasó en el servidor". Sin esto, no hay enlace.
Activo Sí o no (por defecto sí). Una aplicación inactiva deja de aceptar datos.

Podés tener hasta 50 aplicaciones.

Agregar una aplicación (referencia breve)#

Desde Agregar aplicación elegís la plataforma (Web, Android, iOS o React Native), le ponés nombre y, en web, las direcciones permitidas. Lymen te da una clave pública y el código para pegar en tu sitio o app; la instalación se explica en su propia guía. Una app React Native usa una sola clave para Android y iOS. Hasta que llegue el primer dato, la tarjeta muestra "Instalación sin terminar".

Ejemplo#

La web de turnos de una clínica aparece "Con errores" y con un LCP de 4,6 s (mal). Abrís Páginas y ves que /turnos/:id es la peor. En Errores hay un grupo con 300 repeticiones desde ayer, en una sola versión. Abrís una visita afectada, ves el pedido GET /api/turnos · 500 y tocás Ver qué pasó en el servidor para llegar a la causa.

Problemas comunes#

  • "Sin datos todavía" aunque ya instalé el código: abrí el sitio o la app al menos una vez, revisá que la dirección de la web esté entre las permitidas y que la aplicación esté activa.
  • No veo vitales en una app móvil: los vitales web aplican solo a web; en móvil ves los tiempos de inicio y el porcentaje sin crashes.
  • Los números son más bajos de lo esperado: revisá el porcentaje de visitas medidas y si algún tipo de dato está apagado.
  • No aparece el link al servidor en un pedido: falta cargar la dirección del servidor en "Direcciones donde enlazar".
  • No hay mensajes (logs) de la app: ese tipo viene apagado de fábrica.
  • Mensaje "falta actualizarla": tu instalación de Lymen todavía no tiene esa función; consultá a soporte.
  • Mensaje de "demasiados pedidos": esperá un minuto y probá de nuevo.