Ce face generateTrace
--generateTrace <director> scrie în directorul dat trace.json (ce a făcut tsc și cât a durat, pe fișiere și pe expresii) și types.json (tipurile create). trace.json se deschide în chrome://tracing, în Perfetto sau cu pachetul @typescript/analyze-trace, care arată direct punctele lente (de exemplu un tip generic foarte complicat).
--generateCpuProfile <fișier> scrie un profil CPU în formatul V8 (implicit profile.cpuprofile), care se deschide în tab-ul „Performance” din Chrome DevTools sau în VS Code. Ambele sunt pentru depanarea performanței compilatorului, nu pentru uzul zilnic.
Parametri
| Parametru | Descriere |
|---|---|
--generateTrace dir |
Directorul pentru trace.json și types.json. |
--generateCpuProfile fisier |
Fișierul profilului CPU. Implicit profile.cpuprofile. |
Exemple
Exemplul 1: Fișierele generate
Ambele comenzi compilează normal proiectul și scriu în plus fișierele de analiză (profilul este JSON, aici sunt afișate primele caractere).
npx tsc --generateTrace urme
Rezultat (tsc 5.9)
$ npx tsc --generateTrace urme && ls urme
trace.json
types.json
$ npx tsc --generateCpuProfile profil.cpuprofile && head -c 120 profil.cpuprofile
{"nodes":[{"id":1,"callFrame":{"functionName":"(root)","scriptId":"0","url":"","lineNumber":-1,"columnNumber":-1},"hitCo
Greșeli frecvente
- Să adaugi aceste fișiere în git. Sunt mari și utile doar pentru o analiză; pune directorul în
.gitignore.
Comenzi înrudite
diagnostics: Afișează după compilare statistici: câte fișiere, rânduri și tipuri, memoria folosită și timpul fiecărei etape.incremental: Salvează informații despre ultima compilare într-un fișier .tsbuildinfo, ca următoarea compilare să refacă doar ce s-a schimbat.skipLibCheck: Nu mai verifică erorile din fișierele .d.ts (ale pachetelor și ale proiectului); compilarea devine mai rapidă.