Consulta el consumo y exporta CSV
En Consumo, selecciona el entorno y 24 horas, 7, 30 o 90 días. Los lectores pueden consultar y exportar. La tabla incluye los assets eliminados que conservan atribución. El período filtra entregas y entradas; almacenamiento es la última observación válida, no un histórico.
Qué mide cada familia
Sección titulada «Qué mide cada familia»| Familia | Medición | Frontera |
|---|---|---|
| Almacenamiento | Objetos S3 conocidos del asset, con claves deduplicadas | No es espacio físico ni multipart incompleto |
| Entrega | Bytes exactos de cuerpos HTTP 200/206 terminados | No es tiempo visto, confirmación del cliente ni tráfico de una caché externa |
| Entrada registrada | Fuente principal externa aceptada una vez | No cuenta reintentos de transporte ni copias internas |
| Pistas añadidas | Fuentes externas de audio/texto aceptadas una vez | No cuenta pistas copiadas internamente; texto no tiene duración de audio |
Un cuerpo cancelado o truncado deja bytes confirmados desconocidos; una finalización perdida puede quedar pendiente. Los escaneos de almacenamiento no son atómicos y un fallo conserva la última lectura válida con su estado. Sin medir, Sin historial, Obsoleto y cero son resultados diferentes. Los datos históricos anteriores al registro no se reconstruyen.
Consulta con el SDK
Sección titulada «Consulta con el SDK»En tu backend con permiso video:read:
const report = await orilla.usage.retrieve({ timeframe: ["7:days"], page: 1, limit: 25,});console.log(report.data.storage, report.data.delivery);console.log(report.data.ingest, report.data.auxiliary_ingest);const bytes = report.data.storage.observed_bytes;const exactBytes = bytes === null ? null : BigInt(bytes);Bytes y milisegundos conocidos son strings decimales para conservar precisión. No conviertas enteros grandes a Number. Comprueba los contadores de cobertura: una suma conocida puede ser parcial. ingest y auxiliary_ingest pueden faltar en servidores anteriores; no los sustituyas por cero.
GET /v1/usage usa Bearer o sesión; /video/v1/usage usa Basic. Acepta asset_id UUID, page desde 1 y limit hasta 100 (predeterminado 25). El SDK transforma assetId a asset_id. timeframe admite una duración o dos Unix en segundos para el intervalo [inicio, fin), hasta 90 días.
Exporta todo el alcance
Sección titulada «Exporta todo el alcance»Exportar CSV descarga todos los assets del entorno y período, independientemente de la página visible. Cambiar alcance cancela la preparación local; un fallo permite reintentar. El panel solicita v3 explícitamente.
import { writeFile } from "node:fs/promises";
const csv = await orilla.usage.exportCSV( { timeframe: ["7:days"], schema: "v3", }, { signal: new AbortController().signal },);await writeFile("consumo.csv", csv, "utf8");| Esquema | Columnas | Contenido |
|---|---|---|
| v1, predeterminado en API/SDK | 28 | Almacenamiento y entrega |
| v2, explícito | 34 | Añade entrada principal |
| v3, explícito | 42 | Añade pistas auxiliares |
La primera fila es summary; siguen filas asset ordenadas por UUID. El archivo conserva rango, generación UTC, política, cobertura y enteros exactos. Una celda vacía es desconocido; 0 es cero medido. Importa IDs y enteros grandes como texto en tu hoja de cálculo para conservar los dígitos.
Las rutas GET /v1/usage/export.csv y /video/v1/usage/export.csv aceptan período, asset y esquema; no aceptan page o limit. Cada exportación usa una instantánea PostgreSQL, sin ensamblar páginas de momentos distintos. La respuesta es CSV UTF-8 con BOM, CRLF y campos entre comillas; los textos con prefijos de fórmula reciben un apóstrofo de protección. El decodificador Fetch del SDK puede retirar el BOM.
Límites e interpretación
Sección titulada «Límites e interpretación»Hasta 10.000 assets y 20 MiB por CSV; un exceso devuelve 413 antes del adjunto. Las consultas tienen presupuestos de población y cinco segundos por sentencia SQL; timeout devuelve 503. No se presenta una exportación truncada como completa. Si faltan los datos auxiliares necesarios, v3 falla sin reducir el esquema silenciosamente.
Los recibos de entrega/entrada se conservan 90 días. Las duraciones de entrada se atribuyen al momento de aceptación, aunque se confirmen después; no son la duración normalizada del asset. En importación HLS, bytes de entrada son cuerpos descargados, no tamaño del remux. Eliminar un asset conserva la atribución histórica; eliminar el entorno elimina sus datos.
Consumo no es una factura. Tarifas, costes versionados y atribución de costes continúan pendientes. Tampoco debe confundirse con las analíticas de reproducción ni con sus exportaciones diarias de vistas.