DTrace er et dynamisk sporingsrammeverk som lar en administrator eller utvikler få en sanntidskikk inn i et system enten i bruker- eller kjernemodus. DTrace har et C-stil høyt nivå og kraftig programmeringsspråk som lar deg sette inn sporpunkter dynamisk. Ved å bruke disse dynamisk innsatte sporingspunktene kan du filtrere på forhold eller feil, skrive kode for å analysere låsemønstre, oppdage vranglås osv.
På Windows utvider DTrace Event Tracing for Windows (ETW) som er statisk og ikke gir mulighet til å programmere sette inn sporingspunkter under kjøring.
Alle APIer og funksjonalitet som brukes av dtrace.sys er dokumenterte kall.
Microsoft har implementert en spesiell driver for Windows 10 som gjør det mulig å utføre en rekke systemovervåkingsroller. Driveren vil bli inkludert med Windows 10 versjon 1903. DTrace krever også at Windows startes med en kjernefeilsøker aktivert.
Kildekoden for det porterte DTrace-verktøyet er tilgjengelig på GitHub. Besøk siden DTrace på Windowsunder OpenDTrace-prosjektet på GitHub for å se det.
Innhold gjemme seg Sett opp DTrace i Windows 10 Bruker DTraceSett opp DTrace i Windows 10
Forutsetninger for å bruke funksjonen
- Windows 10 insiderbygget 18342eller høyere
- Kun tilgjengelig påx64Windows og fanger opp sporingsinformasjon kun for 64-bits prosesser Windows Insider-programmet eraktivertogkonfigurertmed gyldig Windows Insider-konto
- Gå til Innstillinger->Oppdatering og sikkerhet->Windows Insider-program for detaljer
Bruksanvisning:
- BCD-konfigurasjonssett:
- bcdedit /sett dtrace på
- Merk at du må angi bcdedit-alternativet igjen hvis du oppgraderer til en ny Insider-bygg
- Dette installerer brukermoduskomponenter, drivere og tilleggsfunksjoner på forespørsel som er nødvendige for at DTrace skal fungere.
- Valgfritt: OppdaterPATH miljøvariabelå inkludereC:Program FilesDTrace
- sett PATH=%PATH%;'C:Program FilesDTrace'
- Oppsettsymbolbane
- Opprett en ny katalog for bufring av symboler lokalt. Eksempel: mkdir c:symbols
- Sett_NT_SYMBOL_PATH=srv*C:symbols* http://msdl.microsoft.com/download/symbols
- DTrace laster automatisk ned de nødvendige symbolene fra symbolserveren og cacher til den lokale banen.
Valgfri:Sett opp kjernefeilsøkertilkobling til målmaskinen ( MSDN-kobling). Dette erbarenødvendig hvis du ønsker å spore kjernehendelser ved hjelp av FBT eller andre leverandører. - Merk at du må deaktivere Secureboot og Bitlocker på C:, (hvis aktivert), hvis du vil sette opp en kjernefeilsøker.
Bruker DTrace
- Åpne en forhøyet ledetekst.
- Utfør en av følgende kommandoer:|_+_|
Kommandoendtrace -lvn syscall:::vil liste opp alle probene og deres parametere tilgjengelig fra syscall-leverandøren.
Følgende er noen av leverandørene som er tilgjengelige på Windows og hva de instrumenterer.
- syscall – NTOS system callsfbt (Function Boundary Tracing) – Kjernefunksjonsoppføring og returnspid – Prosesssporing i brukermodus. Som kjernemodus FBT, men tillater også instrumentering av vilkårlig funksjon offsets.etw (Event Tracing for Windows) – Gjør det mulig å definere prober for ETW. Denne leverandøren hjelper til med å utnytte eksisterende operativsysteminstrumentering i DTrace.
- Dette er ett tillegg vi har gjort til DTrace for å tillate den å avsløre og få all informasjonen som Windows allerede gir S.T.W.
Du finner flere eksempelskript som gjelder for Windows-scenarier i denne prøvekatalog.
Kilde: Microsoft