A fost publicat release-ul sistemului de trasare dinamică SystemTap 5.0, care oferă pentru platforma Linux instrumente de depanare similare cu tehnologia DTrace. SystemTap permite monitorizarea detaliată a sistemului Linux în funcțiune, colectarea de statistici despre aplicații, profilare și controlul apelurilor de sistem. Managementul se realizează printr-o interfață de linie de comandă și un limbaj de scripting asemănător cu C. Sistemul este compatibil cu nucleele Linux începând cu versiunea 3.10 până la 6.6-rc0.
În dezvoltarea proiectului sunt implicate companii precum Red Hat, IBM, Intel, Hitachi și Oracle. În catalogul de exemple sunt prezentate peste 190 de scripturi pentru diverse cazuri de utilizare, potrivite pentru a supraveghea distribuția memoriei, intrările/ieșirile, operațiunile de disc, traficul de rețea (de exemplu, analiza funcționării NFS), funcționarea planificatorului de sarcini, procesarea întreruperilor, utilizarea bufferelor de sistem, stabilirea blocajelor, executarea apelurilor de sistem, procesarea semnalelor etc.
Modificări principale:
- Suportul pentru ramura kernel-ului 2.6.32, utilizată în RHEL6, a fost oprit. Testarea SystemTap se realizează acum cu nucleele 3.10 (RHEL7), 4.18 (RHEL8 + CentOS Stream 8), 5.14.0 (RHEL9 + CentOS Stream 9), 6.4 (Fedora 38), 6.5 (Fedora 39) și 6.6-rc (Fedora rawhide).
- A fost adăugat suport pentru procesul debuginfod pentru a obține informații de depanare și metadate despre fișierele executabile instalate.
- A fost adăugat suport pentru datele de depanare în format DWARF5, care pot fi utilizate în funcția print_ubacktrace_fileline().
- În frontend (utilitarul stap), în prezența servere debuginfod a fost implementată posibilitatea de a folosi măști în definirea proceselor țintă, de exemplu, stap -e ‘probe debuginfod.process(«/usr/*/curl»).begin { log(«hi»)}. Detalierea informațiilor despre procese în lista afișată utilizând opțiunea «-L» în combinație cu mai multe «-v» a fost îmbunătățită.
- În backend a fost îmbunătățită performanța înregistrării uprobe și a fost accelerată încărcarea modulelor kernel-ului. A fost propus un sistem mai rapid și mai fiabil de transfer al mesajelor între kernel și spațiul utilizatorului.
- Au fost adăugate macrocomenzi tratate în timpul execuției: STP_TIMING_NSECS pentru obținerea informațiilor despre timpul de verificare în nanosecunde și STP_FORCE_STDOUT_TTY pentru a suprascrie STP_STDOUT_NOT_ATTY.
Sursa: opennet.ro
