badfd is an eBPF tool to discover leaks in your File Descriptors by tracing the openat syscall.
Allows you to observe:
- ENOENT errors (file not found)
- IO latency
- EACCES (permission denied)
- Hunt race conditions
- Debug Runtime and IO problems.
- Discover potential leaks in real-time.
- Linux Kernel 5.8+ (BTF support enabled)
- Root privileges
- Go 1.20+
# Clone the repo
git clone https://github.com/scale03/badfd
cd badfd
make
sudo ./badfd --err
sudo ./badfd --err -- python3 my_broken_script.pyEmit structured JSON for logging pipelines (Elastic, Fluentd, etc.):
sudo ./badfd --json --ms 50MIT / GPL Dual Licensed