A DTrace egy dinamikus nyomkövetési keretrendszer, amely lehetővé teszi az adminisztrátorok vagy fejlesztők számára, hogy valós idejű betekintést kapjanak a rendszerbe akár felhasználói, akár kernel módban. A DTrace C-stílusú, magas szintű és hatékony programozási nyelvvel rendelkezik, amely lehetővé teszi nyomkövetési pontok dinamikus beszúrását. Ezekkel a dinamikusan beillesztett nyomkövetési pontokkal szűrhet feltételekre vagy hibákra, kódot írhat a zárolási minták elemzéséhez, holtpontok észleléséhez stb.
Windows rendszeren a DTrace kiterjeszti az Event Tracing for Windows (ETW) funkciót, amely statikus, és nem teszi lehetővé a nyomkövetési pontok programozott beszúrását futás közben.
A dtrace.sys által használt összes API és funkció dokumentált hívás.
A Microsoft speciális illesztőprogramot vezetett be a Windows 10 rendszerhez, amely lehetővé teszi számos rendszerfigyelő szerepkör betöltését. Az illesztőprogramot a Windows 10 1903-as verziója tartalmazza. Ezenkívül a DTrace jelenleg megköveteli, hogy a Windows rendszermag-hibakeresővel legyen elindítva.
A portolt DTrace eszköz forráskódja elérhető a GitHubon. Látogassa meg az oldalt DTrace a Windows rendszerenaz OpenDTrace projekt alatt a GitHubon, hogy megtekinthesse.
Tartalom elrejt A DTrace beállítása a Windows 10 rendszerben A DTrace használataA DTrace beállítása a Windows 10 rendszerben
A funkció használatának előfeltételei
- Windows 10 bennfentesépítése 18342vagy magasabb
- Csak a következőn érhető elx64Windows és csak a 64 bites folyamatokhoz rögzíti a nyomkövetési információkat A Windows Insider program azengedélyezve vanéskonfigurálvaérvényes Windows Insider fiókkal
- A részletekért látogasson el a Beállítások->Frissítés és biztonság->Windows Insider programba
Utasítás:
- BCD konfigurációs készlet:
- bcdedit /set dtrace on
- Megjegyzés: ha új Insider buildre frissít, újra be kell állítania a bcdedit beállítást
- Ez telepíti a DTrace működéséhez szükséges felhasználói módú összetevőket, illesztőprogramokat és további igény szerinti szolgáltatáscsomagokat.
- Opcionális: Frissítse aPATH környezeti változóhogy tartalmazzaC:Program FilesDTrace
- set PATH=%PATH%;'C:Program FilesDTrace'
- Beállítszimbólum útja
- Hozzon létre egy új könyvtárat a szimbólumok helyi gyorsítótárazásához. Példa: mkdir c:symbols
- Készlet_NT_SYMBOL_PATH=srv*C:symbols* http://msdl.microsoft.com/download/symbols
- A DTrace automatikusan letölti a szükséges szimbólumokat a szimbólumkiszolgálóról, és gyorsítótárat tárol a helyi elérési útra.
Választható:Kernel hibakereső beállításacsatlakozás a célgéphez ( MSDN link). Ezcsakszükséges, ha FBT vagy más szolgáltatók használatával szeretné nyomon követni a kernel eseményeit. - Vegye figyelembe, hogy le kell tiltania a Securebootot és a Bitlockert a C:-en (ha engedélyezve van), ha kernel hibakeresőt szeretne beállítani.
A DTrace használata
- Nyisson meg egy emelt szintű parancssort.
- Hajtsa végre a következő parancsok egyikét:|_+_|
A parancsdtrace -lvn syscall:::listázza a syscall szolgáltatótól elérhető összes vizsgálót és paramétereiket.
Az alábbiakban felsorolunk néhány, a Windows rendszeren elérhető szolgáltatót és az általuk használt eszközöket.
- syscall – NTOS rendszerhívások fbt (Funkcióhatár nyomkövetés) – Kernelfüggvény bevitele és returnspid – Felhasználói módú folyamatkövetés. Mint a kernel módú FBT, de lehetővé teszi az offsets.etw tetszőleges függvények műszerezését (Event Tracing for Windows) – Lehetővé teszi szondák meghatározását az ETW számára Ez a szolgáltató segít a meglévő operációs rendszer műszereinek kihasználásában a DTrace-ben.
- Ez egy olyan kiegészítés, amelyet a DTrace-hez tettünk annak érdekében, hogy felfedje és megszerezze a Windows által a S.T.W.
További Windows-forgatókönyvekhez használható minta szkriptek találhatók ebben minták könyvtár.
Forrás: Microsoft