Microsoft Teams guarda automáticamente trazas de rendimiento en la carpeta C:\Users\<usuario>\AppData\Local\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\PerfLogs
. El archivo Performance Profile.json es parte de ese sistema: sirve para diagnosticar problemas, no para espiarte.
¿Qué es exactamente Performance Profile.json
?
Durante cada sesión, el cliente de Teams —basado en la plataforma Electron y el motor Chromium— activa un profiler interno. Ese componente mide el consumo de CPU, memoria, hilos, E/S de disco, uso de GPU y latencia de la interfaz. Los resultados se serializan a JSON para que puedan analizarse en IDEs o en Edge DevTools sin depender de formatos propietarios.
Ruta de creación
C:\Users\\AppData\Local\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\PerfLogs\Performance Profile.json
Disparadores
- Inicio y cierre de la aplicación.
- Cambios notables de carga (unirse a una reunión, compartir pantalla, activar efectos de vídeo).
- Eventos de depuración forzados por combinaciones de teclas (Ctrl + Alt + Shift + 1 muestra el debugger oculto, por ejemplo).
Arquitectura del registro de rendimiento
Teams se apoya en un enfoque multinivel:
Capa | Herramienta | Propósito |
---|---|---|
Runtime | Chromium Tracing (chrome://tracing ) | Perfilado de procesos y JS V8 |
App | Logger de Teams | Eventos de UI y llamadas a APIs Graph |
Sistema | ETW (Windows Event Tracing) | Kernel, red y DirectX |
Métricas principales dentro del JSON
thread_name
: indica si la carga proviene del renderer, del proceso principal o de extensiones.ts
ydur
: sello de tiempo en microsegundos y duración del evento.cat
: categoría (render, net, gpu, ipc, user timing).args
: diccionario con detalles (FPS, búferes de audio, IDs de reunión).
¿Es un riesgo de seguridad o privacidad?
En la práctica, no. Microsoft documenta que los PerfLogs no contienen:
- Mensajes de chat.
- Fragmentos de vídeo o audio.
- Tokens de autenticación o secretos.
Los registros se cifran solamente al ser enviados a Microsoft (si aceptas cargar diagnósticos avanzados en los ajustes). Localmente, se almacenan en texto claro, pero la información es puramente técnica.
Buenas prácticas corporativas
- Limita el acceso NTFS de la carpeta
PerfLogs
solo a administradores si tu entorno lo requiere. - Establece la directiva de Grupo “Send required diagnostic data” para evitar exportaciones automáticas.
- Incluye la carpeta en tu política de limpieza de discos (véase
Storage Sense
o scripts de Intune).
¿Cuándo y cómo eliminarlos?
Si tu disco se llena —especialmente en equipos con SSD de poca capacidad— basta con borrar manualmente los archivos JSON; Teams los recreará al próximo arranque. A escala, usa PowerShell:
Get-ChildItem "$env:LOCALAPPDATA\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\PerfLogs" -Filter *.json | Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } | Remove-Item -Force
Cómo aprovechar Performance Profile.json
para diagnosticar problemas
- Abre Microsoft Edge (versión 94 o posterior).
- Presiona F12 y ve a la pestaña Performance.
- Haz clic en Load profile y selecciona el JSON.
- Visualiza la línea de tiempo: podrás filtrar por “Long Tasks” (>50 ms), detectar jank o picos de GC.
- Correlaciona con el consumo de GPU/CPU en la tabla Bottom-Up.
- Si encuentras frames perdidos o sobrecarga de códec, ajusta la calidad de vídeo o habilita aceleración H.264 en la configuración de Teams.
Mapa de síntomas frecuentes
Síntoma | Métrica clave | Acción recomendada |
---|---|---|
Retraso al abrir chats | Secuencias de Layout Shift > 200 ms | Vaciar caché, desactivar extensiones de Teams |
Pantalla congelada en reuniones | FPS < 10, gpu_queue saturada | Actualizar driver GPU, reducir video a 360 p |
Audio entrecortado | Buffer underrun > 5 % | Priorizar red en QoS, chequear ancho de banda |
Preguntas frecuentes
¿Puedo desactivar la creación del archivo?
No existe un conmutador oficial. El registro es intrínseco al runtime de Teams. Sin embargo, la sobrecarga es mínima (≈ 0,5 % CPU) y la mayoría de usuarios nunca nota su existencia.
¿Cuánto espacio suele ocupar?
Entre 200 KB y 5 MB según la duración de la sesión y la verbosidad del modo de depuración. En entornos VDI el tamaño tiende a ser más alto porque se capturan más eventos de IPC.
¿Es seguro compartir el archivo con Soporte?
Sí, siempre que tu organización siga la ruta de ticketing oficial. Revisa primero el contenido: es texto plano y puedes buscar (Ctrl + F) cualquier posible PII.
Guía paso a paso para administradores de TI
- Audita el volumen. Usa
Get-FolderSize
en PowerShell y establece alertas si supera 100 MB. - Incluye la carpeta en tu solución de respaldo. Puede ser vital para reproducir errores de usuario.
- Automatiza la limpieza. Integra el script anterior en una tarea programada semanal.
- Documenta el flujo de escalado. Cuando el Help Desk sospeche de un problema, debe adjuntar ambos archivos:
Teams.log
yPerformance Profile.json
.
Integración con herramientas externas
Además de Edge DevTools, puedes emplear:
- PerfView: para correlacionar eventos ETW con las marcas de tiempo del JSON.
- Visual Studio Code con la extensión Chrome Debugger: importa el perfil y saca estadísticas de heap.
- Grafana/Loki: si guardas los JSON en un share SMB, un agente puede parsearlos y graficar métricas agregadas.
Consejos de optimización basados en los resultados de PerfLogs
Reduce el consumo de memoria
Deshabilita aplicaciones instaladas dentro de Teams (como Viva Insights) que no uses a diario; cada una añade procesos secundarios y listeners de eventos.
Evita el jank en la UI
Cuando el JSON indique picos de repintado, comprueba el parámetro Enable GPU acceleration
. En algunos chipsets Intel de 7.ª generación la aceleración genera más penalización que beneficio.
Aligera la red
Si las marcas webrtc_latency
superan 400 ms manteniendo buena CPU, baja la resolución de vídeo o activa la opción “Alta disponibilidad de red” en las políticas de Teams Admin Center.
Conclusiones
Lejos de ser un indicio de software malicioso, Performance Profile.json es el “termómetro” interno de Microsoft Teams. Su misión es capturar datos fieles para que desarrolladores y técnicos puedan reproducir cuelgues, detectar fugas de memoria o pulir la experiencia de usuario. Conservarlo o eliminarlo depende de tus necesidades de soporte y del espacio en disco, pero su mera presencia no supone un riesgo ni requiere intervención especial.