sixty

documentación

Qué mide sixty, y cómo se instala

Un agente dentro de tu aplicación mide qué hace cada operación — filas devueltas, consultas emitidas, tiempo empleado, bytes enviados, errores lanzados — y envía resúmenes. El colector compara cada versión con la anterior y te dice qué despliegue cambió qué.

Dos consecuencias que conviene conocer antes que nada. No hay umbrales que configurar, porque la comparación es contra tu propia versión anterior y no contra un número que alguien adivinó. Y no se puede comparar nada hasta que haya reportado una segunda versión, así que el primer despliegue tras la instalación está en silencio por diseño.

Elige tu lenguaje

Todos los agentes de servidor miden las mismas señales base y escriben el mismo formato. Lo que cambia es lo que permite cada entorno de ejecución: solo Python puede separar el cálculo de la espera, solo Node instrumenta tus funciones sin que se lo pidan, solo PHP tiene que funcionar sin un hilo en segundo plano, y los planes de consulta necesitan Postgres.

Por delante del servidor

Un span de servidor termina cuando se escribe la respuesta, que es bastante antes de que haya nada en pantalla. Estos miden la mitad que ocurre después — y, en un móvil o en una aplicación solo con Supabase, la mitad que no tiene ningún span de servidor.

Lo demás

  • OpenTelemetry — envía trazas y métricas OTLP desde tu collector actual, manteniendo Grafana, Prometheus, Elastic, Vercel, AWS u otro backend.
  • Qué registra cada agente — una tabla, 8 agentes, todas las señales. La página que hay que leer si estás eligiendo entre dos de ellos o te preguntas por qué nunca aparece un hallazgo.
  • Todas las señales — qué significa cada tipo de hallazgo, en qué unidad, y qué clase de cambio de código lo provoca.
  • Cómo funciona — el anclaje a despliegues, los sketches de cuantiles, cómo se atribuye una consulta a la función que la emitió, y qué le cuesta el agente a la aplicación.
  • Servidor MCP — cómo tu editor lee los hallazgos, reclama uno, lo arregla y deja constancia de lo que hizo.
  • GitHub — enlaza un repositorio y un hallazgo nombra el pull request de ese despliegue que tocó el archivo donde vive. Solo lectura, y no se guarda el contenido de ningún archivo.

Dos reglas que cumple cada agente

No puede romper tu aplicación. Cada camino de medición está envuelto para que un fallo dentro del agente no pueda salir como un error de aplicación. Cuando el colector no es alcanzable, el agente sigue midiendo en un búfer acotado y descarta la ventana más antigua en vez de crecer; nada se bloquea, nada reintenta para siempre, y la aplicación no se entera.

Nunca llega a saber quiénes son tus usuarios. Sin identificador de usuario, sin identificador de sesión, sin cookies, sin dirección IP, y sin ningún valor de ninguna consulta — las sentencias se normalizan a su forma antes de que nada salga del proceso. Los visitantes únicos se cuentan a partir de un código que rota a diario, que deriva tu propio servidor y que no podemos revertir, y que se suma a un recuento y se descarta en vez de guardarse. Eso es una propiedad del código y no un ajuste, lo que significa que también es una pregunta que este producto no puede responderle a nadie, nosotros incluidos.

Documentación de sixty — qué mide cada agente y cómo se instala