Hai visto uno o più file .json (ad es. Performance Profile.json) nella cartella PerfLogs
di Microsoft Teams e ti stai chiedendo se sia qualcosa di anomalo o pericoloso? In breve: sono normali log di performance creati dal client Teams per diagnosi e troubleshooting.
Perché compare “Performance Profile.json” nella cartella PerfLogs di Teams
Il client Microsoft Teams — sia nella versione classica sia nel nuovo client basato su Edge/Chromium — include un meccanismo di profilazione che registra, in modo opportunistico, dati sulle prestazioni dell’app (uso di CPU e RAM, latenze di rete, eventi del rendering, ecc.). Quando si verificano condizioni specifiche (ad esempio rallentamenti, errori o l’uso di strumenti di diagnostica), Teams salva uno o più profili in formato .json
nella cartella PerfLogs
.
La presenza del file non è un indicatore di compromissione né di un malfunzionamento grave: è, piuttosto, il “termometro” che l’app usa per aiutare l’utente o il supporto tecnico a capire cosa succede sotto il cofano.
Risposta rapida (tabella di sintesi)
Cosa sapere | Dettagli |
---|---|
Origine del file | È un log di performance generato automaticamente dal client Teams (nuova e classica versione). Contiene metriche su utilizzo CPU/RAM, eventi di rete, latenze, ecc. destinati al troubleshooting interno. |
Motivo della creazione | Teams produce questi profili quando rileva condizioni che potrebbero incidere sulle prestazioni o su richiesta esplicita degli strumenti di diagnostica (ad es. tramite scorciatoie da tastiera o DevTools di Edge/Chromium). |
Rischi per la sicurezza | Nessuno: non contiene credenziali, chat o dati sensibili; solo contatori e timestamp. È normale trovarlo nella cartella indicata. |
Cosa fare | Se non riscontri problemi di prestazioni, puoi ignorarlo o cancellarlo per liberare spazio (verrà ricreato se necessario). Se hai rallentamenti o crash, condividi il file con il supporto Microsoft o chiedi nella community “Microsoft Teams Development” per analisi approfondite. |
Gestione dello spazio su disco | I file sono in genere piccoli (da pochi KB ad alcuni MB). Se il numero/volume diventa significativo, eliminali periodicamente o automatizza la pulizia con uno script PowerShell che cancella i log più vecchi di n giorni. |
Come disattivare la generazione (opzionale) | Non esiste un toggle ufficiale. Per ridurla: 1) usa l’app Teams aggiornata (il nuovo client genera log più efficienti); 2) evita di tenere aperti i DevTools; 3) non attivare “Enable Logging for Diagnostics” se non serve. |
Dove si trova la cartella PerfLogs e quali file aspettarsi
Su Windows, per il nuovo Teams (app Store/Work Account), la cartella è in genere:
C:\Users<utente>\AppData\Local\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\PerfLogs
Per la versione classica o installazioni legacy per-utente si può trovare anche qui:
%APPDATA%\Microsoft\Teams\PerfLogs
All’interno potresti vedere nomi come:
Performance Profile.json
renderer-profile-YYYYMMDD-HHMMSS.json
network-trace-...
(tracce di rete in JSON).heapsnapshot
o.heapprofile
(profilazioni memoria)
Il numero e la frequenza variano in base all’uso dell’app, al carico del sistema e all’eventuale attivazione di strumenti di diagnostica.
È sicuro? Considerazioni su sicurezza e privacy
I profili .json salvano misure tecniche: contatori di CPU, memoria, tempi di risposta, stack trace anonimi, etichette di eventi (ad es. “callStarted”, “frameDropped”). Non includono il testo delle chat, allegati, credenziali, token o contenuti vocali/video. Il loro scopo è esclusivamente tecnico.
Se lavori in un contesto regolamentato (es. PA o azienda soggetta a audit), trattali come log tecnici e, dove richiesto, applica le normali policy di retention e minimizzazione: archiviazione limitata, accesso ai soli amministratori, cancellazione periodica.
Quando e perché Teams li crea
- Degradazione percettibile delle performance: es. rallentamenti dell’interfaccia, rendering irregolare, picchi di CPU o memoria durante riunioni o condivisione schermo.
- Errori o crash: per aiutare l’analisi post‑evento.
- Diagnostica esplicita: se usi scorciatoie o strumenti per raccogliere log (ad es. combinazioni da tastiera per generare un pacchetto diagnostico, oppure l’apertura dei DevTools integrati del WebView2/Chromium con la profilazione attiva).
- Ambienti VDI: in alcune configurazioni virtualizzate, Teams può intensificare la raccolta di metriche per ottimizzare l’esperienza audio/video.
Cosa puoi fare subito
- Verifica la posizione: premi Win+R, incolla il percorso della sezione “Dove si trova…” e premi Invio.
- Controlla dimensioni e date: ordina i file per “Data modifica” e “Dimensioni”. Se i file sono vecchi o molto numerosi, valuta l’eliminazione.
- Eliminazione sicura: chiudi Teams, cancella i file non necessari e riapri Teams. Se servono, verranno ricreati automaticamente.
- Hai problemi di performance? Conserva gli ultimi file e condividili con il supporto per velocizzare la diagnosi.
Gestione dello spazio: pulizia manuale e automatica
Questi file raramente consumano molto spazio (spesso pochi MB). Tuttavia, su macchine usate intensamente o dopo lunghi periodi senza manutenzione, la cartella può crescere. Di seguito due strategie:
Pulizia manuale
- Chiudi completamente Teams (icona nell’area di notifica → Esci).
- Apri la cartella
PerfLogs
. - Elimina i file più vecchi o tutti i file .json/.heapsnapshot se non stai facendo diagnosi.
Script PowerShell – cancella log più vecchi di n giorni
Lo script seguente rimuove i profili datati, con gestione degli errori e report finale. Puoi incollarlo in PowerShell (consigliato eseguirlo come utente, non è necessaria elevazione se la cartella è nel profilo utente).
$ErrorActionPreference = 'Stop'
Parametri
$days = 14
$paths = @(
"$env:LOCALAPPDATA\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\PerfLogs",
"$env:APPDATA\Microsoft\Teams\PerfLogs"
)
$cutoff = (Get-Date).AddDays(-$days)
$deleted = 0
$skipped = 0
foreach ($p in $paths) {
if (Test-Path $p) {
Write-Host "Pulizia in: $p"
Get-ChildItem -Path $p -File -ErrorAction SilentlyContinue |
Where-Object { $*.LastWriteTime -lt $cutoff } |
ForEach-Object {
try {
Remove-Item -LiteralPath $*.FullName -Force -ErrorAction Stop
$deleted++
} catch {
$skipped++
Write-Warning "Impossibile eliminare $($.FullName): $($.Exception.Message)"
}
}
}
}
Write-Host "Completato. File eliminati: $deleted. File saltati: $skipped."
Automatizzare con Utilità di pianificazione
- Apri Utilità di pianificazione → Crea attività di base….
- Scegli un nome (es. “Pulizia PerfLogs Teams”) e imposta una frequenza (es. settimanale).
- Azioni → Avvia programma →
powershell.exe
. - Argomenti:
-NoProfile -ExecutionPolicy Bypass -File "C:\Percorso\pulizia-PerfLogs.ps1"
. - Conferma. L’attività verrà eseguita automaticamente secondo la pianificazione scelta.
Ridurre la generazione dei log (non esiste uno switch “off”)
- Aggiorna Teams: le versioni recenti migliorano la telemetria e riducono la verbosità quando non necessaria.
- Chiudi i DevTools quando non servono: la profilazione manuale può generare dump e profili aggiuntivi.
- Evita il logging diagnostico esteso (“Enable Logging for Diagnostics” o opzioni equivalenti) se non stai indagando un problema.
- Ottimizza il sistema: driver grafici e audio aggiornati, impostazioni di risparmio energetico adeguate, GPU abilitata per l’accelerazione hardware in Teams (se compatibile) riducono i rallentamenti e quindi le condizioni che innescano la profilazione.
- Verifica componenti di terze parti (overlay, plugin A/V, software di cattura schermo): possono interferire con il rendering e aumentare la necessità di log.
Come leggere il contenuto del JSON
I file Performance Profile.json
sono leggibili con un editor di testo. Troverai serie temporali e blocchi di eventi. Un esempio semplificato:
{
"profile": {
"createdUtc": "2025-09-12T08:31:45.123Z",
"appVersion": "Teams 242xx",
"sessionId": "3f6c...a9",
"os": "Windows 11 23H2"
},
"cpu": [
{ "ts": 1694509900123, "processCpuPct": 18.5, "systemCpuPct": 32.1 },
{ "ts": 1694509901123, "processCpuPct": 42.7, "systemCpuPct": 55.0 }
],
"memory": [
{ "ts": 1694509900123, "workingSetMB": 612, "commitMB": 820 },
{ "ts": 1694509901123, "workingSetMB": 690, "commitMB": 905 }
],
"network": [
{ "ts": 1694509900456, "event": "iceConnected", "rttMs": 38, "jitterMs": 7 },
{ "ts": 1694509903456, "event": "packetLoss", "lossPct": 2.4 }
],
"rendering": [
{ "ts": 1694509900780, "frameDrops": 12, "reason": "gc" }
]
}
Le chiavi esatte possono variare tra versioni, ma la logica resta la stessa: misure temporali utilizzabili per correlare un problema (es. un picco di CPU) con un evento (packet loss o frame drop).
Analisi avanzata con strumenti gratuiti
- Edge/Chrome DevTools: apri DevTools → Performance → Load profile e importa il JSON (o gli
.heapsnapshot
/.heapprofile
). Puoi cercare colli di bottiglia nel rendering, pause di garbage collection, leak di memoria. - Esportazione mirata: se devi condividere dati, invia solo l’intervallo temporale che copre il problema (ad es. gli ultimi 10–15 minuti). La granularità spesso è sufficiente per capire la causa senza fornire log estesi.
- Correlazione con orari: confronta i timestamp con l’orario della riunione o dell’evento che ha dato problemi. Troverai pattern come “salto CPU all’avvio condivisione schermo” o “picco di latenze al cambio rete”.
Come distinguere un log legittimo da qualcosa di sospetto
Anche se raro, è buona pratica un rapido check:
- Percorso: il file è nella cartella indicata ed è generato da Teams. Se un elemento simile appare in percorsi insoliti (es. cartelle Temp generiche o radice di sistema) indaga prima di aprirlo.
- Estensione: i log sono
.json
,.heapsnapshot
,.heapprofile
. Eseguibili (.exe
,.dll
) nella stessa cartella non sono attesi. - Contenuto: aprendo il file dovresti vedere testo JSON leggibile, con elenchi di eventi/metriche. Se è binario incomprensibile, è un altro tipo di file.
- Antivirus: se hai dubbi, esegui una scansione con Windows Defender o la soluzione aziendale.
FAQ
Posso eliminare il file senza rischi?
Sì. Chiudi Teams, cancella il file e riapri l’app. Se necessario, verrà ricreato automaticamente.
Perché ne compaiono tanti?
Utilizzo intenso (riunioni lunghe, condivisioni, multi‑monitor), profili avviati dai DevTools o una fase di troubleshooting possono generare più file.
Posso disattivare completamente la raccolta?
Non c’è un interruttore ufficiale. La strategia è ridurne le condizioni di generazione (vedi sezione dedicata) e gestire la retention con la pulizia programmata.
Contengono dati personali?
No, non contengono contenuti di chat o credenziali. Sono misure tecniche e timestamp. Trattali comunque come log tecnici secondo le policy interne.
Posso inviarli al supporto?
Sì, è una delle finalità principali. Invia solo ciò che serve (ad es. gli ultimi file) e, se possibile, aggiungi l’orario del problema.
Check‑list rapida per amministratori IT
- Definisci una retention (es. 14–30 giorni) e automatizza la pulizia.
- Documenta una procedura di raccolta per utenti con problemi: dove trovare la cartella, cosa inviare, come allegarlo al ticket.
- Allinea i criteri di diagnostica: quando abilitare logging avanzato, chi può farlo, come disattivarlo.
- Monitora driver e aggiornamenti (GPU, audio, rete) per ridurre eventi che generano profilazioni.
- Valuta policy VDI e ottimizzazioni A/V se usi ambienti virtuali.
Approfondimenti utili
- I profili in formato
.json
,.heapsnapshot
,.heapprofile
si possono importare nei DevTools di Edge/Chrome tramite Performance → Load profile per esaminare frame drop, garbage collection, leak di memoria e altri colli di bottiglia. - Documentazione utile (ricercabile): Display original function names in performance profiles e Share enhanced performance and memory traces su Microsoft Learn.
- Per scenari di sviluppo (bot, app personalizzate) la community Microsoft Q&A – Teams Development è un canale efficace; i forum “Microsoft 365” trattano temi out‑of‑the‑box.
Take‑away
Se non hai sintomi di lentezza o crash, Performance Profile.json è solo un log di diagnostica: nessun allarme. Lascialo dov’è o cancellalo se ti serve spazio. Se invece riscontri problemi, conserva gli ultimi file e inviali al supporto: accelereranno la diagnosi.
Esempi pratici: tre casi d’uso
Caso 1 – Utente finale senza problemi
Hai trovato 3 file Performance Profile.json
di pochi MB, con data di due settimane fa. Azione consigliata: cancellali, nessun impatto su Teams. Non servono interventi ulteriori.
Caso 2 – Utente con riunioni a scatti
Durante una call vedi video scattoso e audio che si interrompe. Aprendo il file noti eventi packetLoss
e jitterMs
elevati negli stessi minuti. Azione consigliata: condividi il JSON con il supporto e verifica rete/Wi‑Fi; valuta Ethernet o QoS. Riduci applicazioni in background.
Caso 3 – Helpdesk aziendale
Ricevi ticket di “Teams lento” da più utenti. Implementi lo script di pulizia con retention 21 giorni e chiedi agli utenti di inviare l’ultimo Performance Profile.json
associandolo all’orario del problema. Confrontando i dati, individui un pattern: picchi CPU in coincidenza con la condivisione di contenuti 4K. Intervento: abilitare una policy per limitare la risoluzione di condivisione e aggiornare driver GPU.
Buone pratiche di prevenzione
- Hardware adeguato: CPU multi‑core moderna, almeno 8–16 GB di RAM per un uso intensivo con più app aperte.
- GPU e driver aggiornati per sfruttare l’accelerazione hardware.
- Alimentazione: su laptop, profilo “Prestazioni elevate” durante le call; evita risparmi energetici aggressivi che limitano la CPU.
- Rete: preferisci cablata; su Wi‑Fi usa banda 5 GHz o 6 GHz; attiva QoS dove possibile.
- Igiene software: chiudi applicazioni di cattura video/overlay quando non servono; riduci estensioni del browser se usi Teams web.
Checklist personale per diagnosticare un rallentamento
- Segna data e ora del problema.
- Individua l’ultimo
Performance Profile.json
con timestamp coincidente. - Aprilo e cerca eventi o picchi in corrispondenza (CPU, memoria, rete, rendering).
- Applica una misura correttiva (es. chiudi app pesanti, sposta rete, aggiorna driver) e verifica se il problema si ripresenta.
- Se persiste, invia il file al supporto con la descrizione del contesto.
Conclusione
I file nella cartella PerfLogs
di Teams, incluso Performance Profile.json, sono componenti fisiologici del meccanismo di profilazione. Non sono pericolosi, non contengono dati sensibili e possono essere rimossi in sicurezza se non necessari. In presenza di problemi, invece, rappresentano un prezioso alleato per una diagnosi rapida e informata.