Cómo compartir un log sin filtrar datos personales
Un log se puede compartir sin datos personales si antes se tapan las IP, los correos, las cookies y los tokens que lleva, cambiándolos por marcadores que mantengan el sentido de cada línea. Borrar líneas o recortar a ojo deja el log inservible y, casi siempre, algo a la vista.
- Lectura
- 5 min
- Publicada
Qué viaja dentro de un log
Ver la herramienta Limpiar logs y JSONCuando algo falla, el log es lo primero que te piden. El soporte del proveedor lo quiere adjunto al ticket, en el repositorio de una librería lo pegas en una incidencia pública y, cada vez más, se lo pasas a un asistente de IA para que te ayude a leerlo. En los tres casos sale de tu equipo un texto que nadie escribió pensando en que otros lo leerían, y que registra con detalle quién hizo cada petición. Esta guía cuenta qué suele viajar dentro, qué necesita de verdad quien lo recibe y cómo taparlo sin que deje de servir para encontrar el error.
Qué viaja dentro de un log
Lo más repetido es la dirección IP de cada cliente, que va al principio de cada línea de un servidor web y en campos como client_ip o x-forwarded-for de un log estructurado. El Tribunal de Justicia de la Unión Europea consideró en la sentencia Breyer que una IP dinámica puede ser un dato personal para quien tiene medios legales de asociarla a una persona, así que lo prudente es tratarlas todas como tal.
Detrás vienen los correos y teléfonos que viajan en los parámetros de una URL o en el cuerpo de una petición, las cookies y los identificadores de sesión, los tokens de las cabeceras Authorization y de parámetros como token= o sid=, y las rutas con el nombre de usuario del equipo, como /home/ana o C:\Users\ana, que aparecen en cualquier traza de error. En un log en JSON, además, los nombres de las claves delatan qué hay en cada valor, con campos como email, phone, password o ip. Un identificador de sesión sin caducar vale tanto como una contraseña, porque basta para entrar en la cuenta mientras la sesión siga abierta.
Soporte, un foro o una IA: quién lo va a leer
El destino cambia cuánto dura el texto y cuánta gente lo ve. Un ticket de soporte queda en el sistema del proveedor y pasa por varias personas. Una incidencia en un repositorio público la indexan los buscadores y sigue ahí años después, aunque cierres el problema. Y lo que pegas en un asistente de IA sale a los servidores de otra empresa, con el plazo de conservación que diga su política, como contamos en la guía sobre subir documentos con datos a ChatGPT.
La pregunta útil en los tres casos es qué necesita ver quien lo recibe para ayudarte. Casi nunca son los valores. Necesita el orden de los hechos, las fechas, los códigos de estado, las rutas de la aplicación y los mensajes de error, y le basta con saber que dos líneas corresponden al mismo cliente, sin saber quién es.
Tapar sin que el log deje de servir
La técnica que conserva la utilidad es la seudonimización, que cambia cada valor por un marcador y da siempre el mismo marcador al mismo valor. Si la IP 203.0.113.24 aparece en cuarenta líneas, en todas pasa a ser [IP_1], y quien lee el log sigue viendo que es el mismo cliente el que repite la petición que falla. Tapar con bloques o con una palabra fija protege igual, pero borra esa relación. La diferencia entre las dos técnicas, y por qué la primera no convierte el log en anónimo, la explicamos en la guía sobre anonimización y seudonimización.
Hay que respetar además el formato. Si el log es JSON y quien lo recibe lo va a procesar con un programa, el resultado tiene que seguir siendo JSON válido, con el marcador dentro de las comillas del valor y sin tocar llaves ni comas. Un número tapado pasa a ser una cadena, y conviene saberlo si algún campo numérico se sustituye.
A mano se puede hacer con la búsqueda y sustitución de cualquier editor, con sed en la terminal o con jq para reescribir un campo concreto de cada objeto de un JSON. El riesgo está en lo que no se ve a la primera, como la IP repetida en un campo que no habías mirado o el token pegado al final de una URL.
Cómo lo hace Ofusca
La herramienta para limpiar logs y JSON hace este trabajo en tu navegador, sin subir el texto. Reconoce si lo que pegas es un log, un JSON o un JSON Lines, tapa las IP, los correos, las cookies, los tokens y el usuario de las rutas, y en un JSON el valor entero de claves como password, email o ip. Con los seudónimos, el mismo valor recibe el mismo marcador en todo el log, y la versión limpia se comprueba antes de entregarla para que siga siendo JSON válido.
Todas las herramientas de texto se explican en la ayuda de las herramientas de privacidad. Si guardas el fichero clave, lo que te devuelva la IA con los marcadores se puede deshacer con «Recuperar datos de la IA».
Errores frecuentes al compartir un log
- Tapar el mensaje de error y dejar los campos. La IP que quitaste de la línea legible sigue en client_ip, en x-forwarded-for y en la línea siguiente.
- Borrar las líneas con datos. Sin ellas, quien recibe el log no puede seguir el error y te pedirá el original, que es justo lo que querías evitar.
- Dar por inofensiva una cookie que no se entiende. Un identificador de sesión sin caducar abre la cuenta a quien lo copie.
- Pegar el log entero cuando basta un tramo. Los minutos alrededor del fallo suelen ser suficientes, y cuanto menos texto sale, menos hay que revisar.
Dudas habituales
Preguntas frecuentes
¿Qué datos personales lleva un log?
Sobre todo las IP de los clientes, y también correos y teléfonos en parámetros o cuerpos de peticiones, cookies e identificadores de sesión, tokens en cabeceras y URL, y el nombre de usuario dentro de rutas como /home/ana.
¿Puedo borrar las líneas con datos?
Puedes, pero quien lo recibe pierde el hilo del error. Sustituir cada valor por un marcador conserva las líneas y deja ver que dos peticiones vienen del mismo cliente sin decir cuál es.
¿Un log seudonimizado es anónimo?
No. Quien guarde la correspondencia entre marcadores y valores puede deshacerla, y el contexto de las líneas puede bastar para reconocer a alguien. Reduce lo que sale, pero no convierte el log en anónimo.
¿Sigue siendo JSON válido si lo tapo?
Si el marcador va dentro de las comillas del valor y no se tocan llaves ni comas, sí. Un número tapado pasa a ser una cadena, algo a tener en cuenta si un programa va a leer ese campo.
Esta guía cuenta qué lleva el documento y qué suele comprobarse en el trámite, que es lo que sabemos por hacer la herramienta. Lo que se exija en tu caso concreto lo fija quien te lo pide.
Publicada el 27 de septiembre de 2026. Lectura de 5 min.