|

¿Por qué API OpenAI no registra tus logs?

Los logs de tu API no aparecen en OpenAI Platform por una de tres razones: data retention está deshabilitado en Organization settings, está activo Zero Data Retention (que borra todo por defecto), o usás un endpoint región no-US con restricciones de almacenamiento. La solución depende de tu configuración: habilitar API call logging en Settings → Organization → Data controls, verificar que no esté activo ZDR, y usar store=true en requests si estás en región US.

En 30 segundos

  • Data retention deshabilitado en Organization settings es la causa más común — los logs se descartan automáticamente
  • Zero Data Retention (ZDR) activo borra completamente los logs, incluso si usás store=true
  • El parámetro store=true solo funciona en región US y solo si data retention está habilitado
  • Los logs antiguos se retienen 30 días máximo — si pediste un log anterior se habrá expirado
  • Cambiar de Completions (endpoint antiguo) a Chat Completions (nuevo) puede hacer que desaparezcan logs históricos

OpenAI API Platform es la consola desde donde monitoreás todas tus llamadas a API de modelos como GPT-4, o3, Claude (a través de OpenRouter), etc. Incluye un tablero de logs que muestra requests, responses, errores, latencia, tokens consumidos. Si los logs no aparecen ahí, es un problema de configuración o retención de datos, no de que las llamadas no se hayan procesado.

¿Por qué desaparecen los logs en OpenAI API Platform?

Arrancas a hacer requests a la API, todo funciona bien en logs… y de repente, nada. O peor: nunca aparecieron. (Spoiler: vos no estás loco, es configuración.)

La razón más común es que data retention está deshabilitado en tu Organization. OpenAI guarda logs de forma temporal, pero si no los especificás que los guarde, los descarta. Es como tener un chat que no guarda historial — todo se borra apenas cerrás la ventana.

La segunda causa es Zero Data Retention activo. Esto es una política de privacidad que algunos clientes (sobre todo en Europa o contextos sensibles) activan para que OpenAI NO guarde nada, ni siquiera temporalmente. Cuando está activo, los logs simplemente no existen (aunque técnicamente sí se procesan, solo que se borran al instante).

Tercero: si estás fuera de región US, hay restricciones legales sobre dónde se pueden almacenar los logs. OpenAI no puede guardarlos en servidores de otros países, así que en esos casos desactiva el almacenamiento de forma automática.

Configurar data retention para almacenar logs

Si querés que tus logs aparezcan en Platform, tenés que habilitar data retention. Los pasos son simples (pero fácil de perder si no sabés dónde buscar): Cubrimos ese tema en detalle en ejecutar agentes sin APIs externas.

  • Entrá a OpenAI Platform con tu cuenta
  • Arriba a la derecha: Settings (engranaje)
  • Buscá Organization → Data controls
  • Verificá que API call logging esté enabled (activado)
  • Si no lo ves, chequea también que no esté activado Zero Data Retention (ZDR), que anula el logging
  • Guardá cambios

Una vez habilitado, los logs que generes desde ese momento van a aparecer en tu dashboard. Los datos históricos anteriores a la activación no van a volver (se fueron).

Si estás en una región con restricciones de almacenamiento (GDPR-heavy, ciertos países), OpenAI va a mantener data controls grisado. En ese caso, la única opción es loguear vos mismo en tu infra (guardar copies de responses en tu base de datos).

El parámetro store=true en responses y chat completions

Si usás la API directamente en código, podés pasar store=true en el payload del request para forzar que OpenAI guarde ese request específico. La lógica es: aunque data retention esté genérico, si vos mandás store=true, ese log es crítico y se guarda obligatoriamente.

La sintaxis depende del endpoint:

// Chat Completions (actual)
curl https://api.openai.com/v1/chat/completions \
 -H "Authorization: Bearer $OPENAI_API_KEY" \
 -H "Content-Type: application/json" \
 -d '{
 "model": "gpt-4",
 "messages": [{"role": "user", "content": "Hola"}],
 "store": true
 }'

Atención: store=true tiene limitaciones serias. No funciona si está activado Zero Data Retention, no funciona si estás fuera de región US (OpenAI lo ignora por restricciones legales), y si tenés ZDR + store=true, ZDR gana — los logs igual se borran.

Además, si guardás logs con store=true, ten cuidado: OpenAI puede usar esos datos para entrenar modelos futuros (a menos que tengas un contrato especial que lo prohíba). Para contextos sensibles (HIPAA, PII, secretos), mejor usar tu propia persistencia.

Restricciones de región y Zero Data Retention (ZDR)

Acá viene lo confuso. Hay dos cosas diferentes que parecen lo mismo pero no lo son: Te puede servir nuestra cobertura de privacidad al almacenar logs de respuestas.

ConfiguraciónQué haceDónde se vePor qué lo activas
Data Retention (normal)Guarda logs por 30 días, luego borra automáticamenteOrganization → Data controlsPara auditar y debuggear después
Zero Data Retention (ZDR)Borra logs al instante, OpenAI no los retiene nuncaOrganization → Data controls (checkbox separado)Máxima privacidad, cumplir GDPR estricto, datos sensibles
logs openai no aparecen diagrama explicativo

Zero Data Retention es un nivel ENCIMA de data retention normal. Si lo activas, automáticamente estás diciendo “no guarden nada, ni siquiera temporalmente”. Eso significa: no logs en dashboard, no histórico, no nada. Es privacidad máxima, pero a costa de perder visibilidad completa de qué pasó.

Si estás fuera de región US (Europa, parte de Asia), es posible que OpenAI haya forzado ZDR sin que vos lo hayas activado explícitamente, por restricciones legales de almacenamiento. Chequeá en Data controls si ZDR está marcado. Si lo está y vos no lo pusiste ahí, preguntale a OpenAI support por qué.

Endpoint antiguo vs nuevo: Completions vs Chat Completions

Si migraste de `/v1/completions` (endpoint viejo) a `/v1/chat/completions` (nuevo, que todos usamos ahora), es posible que los logs que ves sean los del nuevo endpoint solamente. Los logs del endpoint antiguo no se mezclan, cada uno tiene su propia línea de historial en Platform.

¿Qué pasó? Subís el modelo, lo probás con Completions en local, funciona bárbaro, publicás el código que usa Chat Completions en prod, y de repente en Platform no ves nada porque estás mirando los logs de Completions viejo (que están vacíos). Es una trampa de interfaz más que un bug.

Solución: Verificá en el filter del dashboard que tengas seleccionado el endpoint correcto. Platform debería mostrar un dropdown que dice “All endpoints” o “Chat Completions” — asegurate que esté en “All”. Complementá con herramientas para debugging y monitoreo.

Tracking requests con X-Client-Request-Id

Si los logs de Platform no aparecen pero necesitás rastrear qué pasó, existe un workaround: usá el header `X-Client-Request-Id` con un identificador único en cada request.

curl https://api.openai.com/v1/chat/completions \
 -H "Authorization: Bearer $OPENAI_API_KEY" \
 -H "X-Client-Request-Id: request-12345-uuid" \
 -H "Content-Type: application/json" \
 -d '{
 "model": "gpt-4",
 "messages": [{"role": "user", "content": "Hola"}]
 }'

OpenAI devolverá ese ID en la response headers, así vos podés asociar requests a responses incluso si falta el log en Platform. Es útil para debugging cuando logs no está habilitado — guardás tu propio log en tu DB con ese ID y después reconciliás con las métricas de OpenAI.

Soluciones rápidas: checklist de debugging

  • Data retention habilitado: Platform → Organization → Data controls → “API call logging” = ON
  • Zero Data Retention no activo: En el mismo panel, verificá que ZDR no esté activado (checkbox desmarcado)
  • Región US (si usás store=true): Si estás en otra región, store=true no funciona — usá tu propio logging
  • Endpoint correcto: Dashboard → filter dropdown → “All endpoints” (o específicamente Chat Completions)
  • Logs no expirados: Los logs se borran después de 30 días. Si buscás algo más viejo, se fue.
  • Proyecto correcto: A veces tenés múltiples proyectos en una organización. Verificá que estés viendo el proyecto donde mandaste requests.

Errores comunes

1. Creer que store=true habilita data retention

store=true es un parámetro de request, no un switch global. Si data retention está deshabilitado en Organization settings, store=true no hace nada. Tenés que habilitar data retention PRIMERO en Organization, y store=true es solo un boost para requests específicos.

2. No revisar si está activado Zero Data Retention

ZDR es silencioso — no tira errores, solo borra logs. Muchos equipos piensan que data retention está habilitado, pero ZDR está activado arriba, anulando todo. Chequeá los dos checkboxes en Organization → Data controls.

3. Confundir logs de API con audit logs

OpenAI tiene un Admin and Audit Logs API separado para acciones administrativas (quién cambió settings, quién creó API keys, etc.). No es lo mismo que los logs de requests a chat completions. Necesitás buscar en el lugar correcto.

Preguntas Frecuentes

¿Por cuánto tiempo OpenAI guarda los logs?

30 días máximo con data retention habilitado. Después se borran automáticamente. Si necesitás histórico más largo, guardá copias en tu base de datos.

¿Los logs aparecen en tiempo real?

Casi — típicamente en 1-2 minutos después del request. Si pasó más tiempo que eso y siguen sin aparecer, probablemente es un problema de configuración (data retention deshabilitado), no de latencia. Esto se conecta con lo que analizamos en plataformas alternativas con mejor logging.

¿Puedo ver logs de requests que no pasaron por OpenAI Platform?

No. Si mandaste requests directamente con cURL, Python, SDK, etc., y no ingresaste a Platform, los logs no están en Platform. Tendrías que haber habilitado data retention ANTES de mandar los requests. No hay forma de recuperar logs históricos que no se guardaron.

¿Por qué los logs de región no-US desaparecen?

OpenAI no puede guardar logs de requests en servidores fuera de US (restricciones legales de GDPR y privacidad). Si tu organización está en otra región, OpenAI automáticamente desactiva data retention. Preguntale a OpenAI support si hay excepciones o workarounds.

¿Cuál es la diferencia entre store=true y data retention habilitado?

Data retention es una configuración global: “guardá todos los logs por defecto”. store=true es un override de request: “este log específico es importante, guardalo obligatoriamente incluso si lo normal sería descartarlo”. Necesitás ambos para máxima cobertura — data retention habilitado para logs generales, y store=true para requests críticos que no querés que se pierdan.

Conclusión

Los logs que no aparecen en OpenAI Platform son casi siempre un problema de configuración, no un bug. Tres checks te resuelven el 95% de los casos: habilitar data retention en Organization settings, verificar que Zero Data Retention no esté activo, y confirmar que estés buscando en el endpoint correcto (Chat Completions, no Completions viejo).

Si estás en región no-US o tenés restricciones de privacidad estrictas, probablemente tengas que hacer tu propio logging en tu infra — OpenAI no te va a poder guardar logs ahí. Y si los logs que buscás tienen más de 30 días, se fueron — el estado de gracia es de un mes.

Lo importante: los logs que OpenAI guarda son para auditoría y debugging después. No son críticos para que la API funcione. Si las requests se procesan bien (recibís responses), está todo bien haya o no logs en Platform. Los logs son un lujo, no una necesidad.

Fuentes

Similar Posts