biostacks.bt

Linux
Publiée le 2026-09-24 05:02:13
Illustration Linux pour la commande biostacks.bt

bpftrace

# Affiche l'aide de bpftrace pour voir toutes les options disponibles
bpftrace --help

# Exécute un script simple directement en ligne (ex: compter les appels système)
bpftrace -e 'kprobe:sys_read { printf("Lecture détectée!\n") }'

# Lit et exécute un programme de traçage depuis un fichier externe
bpftrace /chemin/vers/mon_script.bt

# Redirige la sortie des événements vers un fichier pour analyse ultérieure
bpftrace -o output_trace.log 'kprobe:execve {}'

# Exécute le script en format JSON, utile pour le parsing machine
bpftrace -f json -e 'syscalls:enter { printf("%d", nsecs) }'

# Active les sondes USDT (User Space Tracing) sur un processus spécifique par son PID
bpftrace -p 1234 'usdt_probe {}'

# Affiche des informations détaillées sur le support BPF du noyau actuel
bpftrace --info

# Exécute en mode tampon "none" pour voir les événements immédiatement sans mise en mémoire tampon
bpftrace -B none -e 'kprobe:vfs_read {}'

# Permet l'utilisation de fonctions intégrées considérées comme "unsafe" (pour des tests avancés)
bpftrace --unsafe -e '...'

# Liste toutes les sondes disponibles pour aider à cibler un événement précis
bpftrace -l

# Exécute une commande shell et active les sondes USDT sur le processus résultant
bpftrace -c 'bash -c "ls /tmp"'

# Traque tous les événements de syscalls d'entrée (enter)
bpftrace -e 'syscalls:enter {}'

# Utilise un fichier pour inclure des définitions spécifiques avant le préprocesseur
bpftrace --include headers.bt -e '...'

# Exécute une série de commandes en utilisant l'opérateur pipe, idéal pour les logs
cat /var/log/messages | bpftrace -e '...{}'

# Supprime la sortie par défaut (keep messages quiet) si tu ne veux que des événements spécifiques
bpftrace -q -e 'kprobe:my_func {}'