dtrace(1)
NAMN
dtrace - Dtrace-kompatibelt verktyg för generering av statiska sonddefinitioner för användarapplikationer.
SYNOPSIS
dtrace -s fil [OPTIONER]
BESKRIVNING
Kommandot dtrace konverterar sondbeskrivningar definierade i fil.d till en sondheaderfil via alternativet -h eller en sonddeskriptionsfil via alternativet -G.
OPTIONER
-hgenererar en systemtap-headerfil.-Ggenererar en systemtap-sondbeskrivningsobjektfil.-ofil- Anger namnet på utdatafilen. Om
-Gges skapas fil.o; om-hges skapas fil.h. -Ckör cpp-preprocessorn på indatafilen när-hanvänds.-Ifil
Anger sökvägen till inkluderingsfiler för cpp när -C används.
-kbehåller temporära filer, exempelvis C-källkod för-G.
EXEMPEL
Systemtap är källkodskompatibelt med Dtrace-stöd för statiska sonder i användarapplikationer. Givet en fil test.d innehållande:
provider sdt_probes
{
probe test_0 (int typ);
probe test_1 (struct astruct nod);
};
struct astruct {int a; int b;};
Då skapar kommandot dtrace -s test.d -G sonddefinitionen test.o och kommandot dtrace -s test.d -h skapar sondheadern test.h. Därefter kan applikationen använda de genererade makrona så här:
#include "test.h"
...
struct astruct s;
...
SDT_PROBES_TEST_0(varde);
...
if (SDT_PROBES_TEST_1_ENABLED())
SDT_PROBES_TEST_1(dyr_funktion(s));
SEMAFORER
Semaforer är flaggvariabler som används av sonder för att undvika onödig processorkostnad vid beredning av argument till sonder som kanske inte ens är aktiva. De sätts och rensas automatiskt av systemtap när ett relevant skript körs, så att argumenthanteringskostnaden bara uppstår när det är nödvändigt. Dessa semaforvariabler definieras i test.o-objektfilen, vilken därför måste länkas in i applikationen.
I vissa fall behövs inte semaforvariabler. Genom att utesluta dem kan byggprocessen förenklas, genom att slippa inkludera test.o. För att skippa beroendet av semaforvariabler, inkludera <sys/sdt.h> i applikationen innan test.h:
#include <sys/sdt.h> #include "test.h" ... struct astruct s; ... SDT_PROBES_TEST_0(varde); ... if (SDT_PROBES_TEST_1_ENABLED()) SDT_PROBES_TEST_1(billig_funktion(s));
I detta läge är ENABLED()-testet alltid satt till 1.
SE ÄVEN
BUGGAR
Använd Bugzilla-länken på projektets webbplats eller vår e-postlista för felrapporter:
COLOFON
Denna sida är en del av systemtap-projektet (ett verktyg för spårning och live-systemanalys). Mer information finns på [1]. Felrapporter skickas till systemtap@sourceware.org. Sidan hämtades från projektets uppströms-Git-repo ⟨git://sourceware.org/git/systemtap.git⟩ den 2 februari 2025.
Sidslut
Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man1/dtrace.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till PC Service som har sponsrat Linux.se med webbhotell.