Guías

Logs y métricas

Investiga la salida actual de tu aplicación, busca en los logs archivados y revisa los builds y el uso de recursos.

Salida en directo e historial con búsqueda

Abre un servicio en el lienzo del entorno y selecciona Logs. En directo muestra la salida actual de los contenedores; Historial busca en la salida archivada de la aplicación a través de reinicios y deploys. El historial con búsqueda depende del plan de tu organización y tiene un máximo de 30 días. Los logs son registros de diagnóstico, no copias de seguridad de los datos de tu aplicación.

El uso no es lo mismo que las gráficas de red en directo

Las gráficas de red en directo (RX/TX) incluyen el tráfico interno y no son una factura ni un contador de transferencia. La transferencia saliente está incluida, sin una cuota fija y sin cargos por exceso, según las condiciones de uso razonable. Fíjate en la hora en que se tomó cada dato y en los indicadores de datos que faltan: una medida no disponible no es un cero.

Logs de runtime

Abre una app y ve a la pestaña Logs. El visor consulta si hay salida nueva cada pocos segundos, se pausa cuando la pestaña está en segundo plano y ofrece filtros por texto libre, nivel de log y servicio, además de una opción para ocultar el ruido de los health checks.

bash
# Recent output$ codaracloud logs my-api # Keep polling for new lines$ codaracloud logs my-api --follow # More history from the current container$ codaracloud logs my-api --tail 500
LímiteDetalle
Máximo de líneas1.000 por petición, repartidas entre todas las réplicas de la app.
HistorialEn directo muestra lo que aún conservan los contenedores actuales. Usa Historial para la salida archivada a través de reinicios, dentro del periodo de retención de tu plan.
Actualización en directoLa vista En directo de la consola se actualiza cada 3 segundos y --follow en la CLI consulta cada 2. Ninguno es un flujo persistente, así que una breve interrupción puede hacer que se pierdan líneas.

Los niveles de log se deducen

Codara deduce la gravedad de una línea a partir de su texto para que el visor pueda colorearla y filtrarla. Es una ayuda visual, no algo que informe tu app. Los logs estructurados en JSON con un campo de nivel explícito se clasifican de forma mucho más fiable que el texto libre.

Buscar en los logs archivados

En Logs → Historial, elige la última hora, las últimas 24 horas, los últimos 7 o 30 días, o un rango personalizado. Los rangos predefinidos buscan al momento. Para fechas personalizadas o para buscar texto distinguiendo mayúsculas y minúsculas, haz clic en Buscar en el historial. El texto bajo los resultados muestra el intervalo en el que se ha buscado realmente y el historial disponible en tu plan. Cada búsqueda devuelve como máximo 1.000 líneas coincidentes; si llegas a ese límite, acota el rango o añade texto. Exportar descarga los resultados filtrados y cargados, no el archivo completo. La página Logs propia de cada app tiene los mismos controles.

Logs de todo el entorno

El explorador de logs del entorno junta la salida de todos los servicios de un entorno, y es la forma más rápida de seguir una petición de un servicio a otro. En un entorno grande, la vista toma muestras de los distintos servicios y te avisa cuando ha recortado la salida, así que tómala como una visión general y no como un registro completo. Con una sola app coincide con la vista En directo de esa app; con varias, combina su salida. La búsqueda en el archivo está en la pestaña Historial de cada app.

Logs de build

La salida del build aparece en la página de la release mientras el build está en marcha, con un indicador de pasos que muestra en qué fase está. Consúltala ahí.

Los logs de build se borran a las 24 horas

Aproximadamente un día después de que termine un build, sus logs se eliminan y la página de la release ya no muestra nada. Si tienes que investigar un build fallido, copia la salida mientras siga ahí. No hay ningún comando de la CLI para los logs de build: usa la consola.

Métricas

Cada app tiene una pestaña Métricas con la evolución de la CPU, la memoria, la red, el número de réplicas y los reinicios.

bash
# Current usage with sparklines$ codaracloud metrics my-api # Over a longer window$ codaracloud metrics my-api --window 24h

Las ventanas disponibles son 5m, 1h, 24h, 7d y 30d.

Puedes ver las métricas de los últimos 30 días como máximo

Es la ventana más larga, 30d. Si quieres un historial más largo, envía las métricas a tu propio servicio de monitorización.

Los reinicios son la señal que debes vigilar

Un número de reinicios que no para de subir casi siempre significa que el contenedor se cae y se reinicia, o que no pasa su health check. Revisa los logs y la ruta del health check antes de buscar en ningún otro sitio.

Métricas de las bases de datos

Las bases de datos dedicadas informan de CPU, memoria y almacenamiento. Las compartidas solo informan del almacenamiento, porque la CPU y la memoria pertenecen a la instancia común y no se pueden atribuir con rigor a un solo usuario de esa instancia; esas gráficas se quedan vacías en lugar de mostrar un cero engañoso. Para leer las métricas de una base de datos con un token hacen falta un scope de lectura de bases de datos y metrics:read.

Notificaciones de deploy

Un proyecto puede enviar una petición HTTP firmada a un endpoint que controles tú cada vez que un deploy sale bien o falla; es útil para publicar en Slack o para disparar automatizaciones posteriores. Configúralas en los ajustes del proyecto, en Webhooks.

CabeceraContiene
X-Codara-Eventdeployment.succeeded, deployment.failed o test
X-Codara-DeliveryUn id único para este intento de entrega
X-Codara-TimestampSegundos Unix
X-Codara-Signaturesha256=<hex>: un HMAC de la marca de tiempo y el cuerpo, con el secreto de firma que se muestra una sola vez al crear el endpoint

Verifica siempre la firma antes de fiarte de un payload, y compara los digests en tiempo constante. Cualquier respuesta 2xx cuenta como entregada; cualquier otra se reintenta con espera progresiva, hasta 8 intentos. La consola muestra las últimas 20 entregas con sus códigos de estado.

Cubrir lo que falta

Con estos límites de retención, conviene que la mayoría de las apps en producción envíen su propia telemetría a algún sitio duradero:

  • Errores: un servicio de seguimiento de errores te da trazas de la pila y agrupación que los logs del contenedor nunca te darán.
  • Logs que tienes que conservar: envíalos desde tu app a un servicio de logs alojado.
  • Disponibilidad: un monitor externo que llame a tu endpoint de health check es lo único que te dice que la app no es accesible desde fuera.

Última actualización: