
DTrace
DTrace je cjelovit i dinamičan okvir za praćenje i nadzor Razvijen za dijagnosticiranje problema jezgre i aplikacija u proizvodnim sustavima u stvarnom vremenu. U početku stvoren za Solaris, DTrace je prenesen na druge operativne sustave slične Unixu.
DTrace je razvijen za podršku administratorima sustava u rješavanju problema dinamičkog praćenja u kernelu i krajnjim aplikacijama na operacijskom sustavu Solaris i kompatibilan je sa standardnim Linux kernelima koji podržavaju BPF. Da bi funkcionirao, zahtijeva libctf biblioteku kompatibilnu s CTF formatom za otklanjanje pogrešaka uključenu u paket binutils ili biblioteku libdtrace-ctf, prenesenu iz Solarisa.
Ovaj alat omogućuje administratorima sustava i programerima:
- Nadzor sustava: DTrace pruža korisniku detaljne informacije o korištenju računalnih resursa, kao što su CPU, memorija i pohrana, omogućujući vam da identificirate uska grla i poboljšate učinkovitost sustava.
- Problemi s izvedbom otklanjanja pogrešaka: Omogućuje vam da identificirate i dijagnosticirate probleme performansi u stvarnom vremenu, što olakšava rješavanje problema i optimizaciju sustava.
- Optimizirajte performanse: Pružanjem detaljnih informacija o ponašanju aplikacije, DTrace omogućuje programerima da optimiziraju performanse svojih programa i poboljšaju ukupnu učinkovitost sustava.
Sve do prije nekoliko godina Oracle je osigurao DTrace podršku za Linux a alat se nudi kao implementacija procesa korisničkog prostora koji koristi eBPF podsustav i standardne mehanizme praćenja koje pruža Linux kernel. Što se tiče funkcionalnosti, ova implementacija DTrace-a temeljena na eBPF-u nalikuje prvoj verziji DTrace-a za Linux, koja je implementirana kao kernel modul.
O DTrace 2.0.0-1.14
Trenutno, DTrace je u verziji 2.0.0-1.14 i distribuira se u obliku dvije opcijske zakrpe za kernel 6.7 koje vam omogućuju korištenje naprednih funkcija za dobivanje dodatnih podataka o modulima i kernelu, osim pid providera, koji se koristi za praćenje procesa u korisničkom prostoru, sada ima podršku za praćenje izvršenja instrukcija prema njihovom pomaku u korisnički prostor.
Ima podršku za korištenje funkcija stack() i ustack(). za agregiranje prikupljenih podataka, mogućnost uklanjanja elemenata iz bilo koje vrste asocijativnih nizova dodjeljivanjem literala 0, što olakšava upravljanje podacima u nizovima.
DTrace 2.0.0-1.14 nudi niz opcija za različite aspekte sustava, uključujući brojače performansi CPU-a, ograničenja značajki, zaključavanja, životni ciklus procesa, a uključena je i nova akcija ispisa za generiranje strukturiranih podataka s napomenama tipa, poboljšavajući prezentaciju rezultata praćenja.
Osim toga omogućuje vam agregiranje podataka iscrtavanja i izvršavanje radnji na temelju rezultata s novim funkcijama cleanpath(), d_path() i link_ntop() su integrirani i omogućena je mogućnost spremanja podataka praćenja procesa (USDT) između ponovnih pokretanja dtprobeda, osiguravajući kontinuitet praćenja čak i nakon ponovnih pokretanja.
Štoviše, također Napominje se da je dodan parametar "-xcpu", koji omogućuje povezivanje provjere s određenim CPU-ima, Opcija "-xlockmem" je uvedena kako bi se ograničila veličina korištene memorije, optimizirajući performanse sustava.
Dodana je podrška za BTF mehanizam, koji pruža informacije o provjeri tipa u BPF pseudokodu i sada je moguće koristiti skriptu za postavljanje za izgradnju, pojednostavljujući proces konfiguracije i prilagodbe alata za otklanjanje pogrešaka.
konačno ako jesi zainteresiran za saznanje više o tome, možete provjeriti pojedinosti na sljedećem linku.
Nabavite DTrace
Za one koji su zainteresirani za alat, trebate znati da Oracle nudi unaprijed izgrađene pakete korisničkog prostora x86_64 i aarch64 DTrace za Oracle Linux 9 (UEK7 kernel), Oracle Linux 8 (UEK7 ili UEK6 kernel) i Oracle Linux 7 (UEK6 kernel).
Dok za druge distribucije, morate imati niz ovisnosti, koje možete konzultirati na ovoj poveznici i koje su potrebne prije kompajliranja izvorni kod sami.