macOS
brew install uftracelocal Homebrew formula metadata
brew
Prüfe Installationswege, Executables, Metadaten und Sicherheitshinweise für uftrace in AI-Agent-Workflows.
Installation
brew install uftracelocal Homebrew formula metadata
sudo apt install uftraceDebian stable package indexes · uftrace · Quelle: deb.debian.org
nix profile install nixpkgs#uftracenixpkgs package indexes · pkgs/by-name/uf/uftrace/package.nix · Quelle: api.github.com
sudo zypper install uftraceopenSUSE Tumbleweed package metadata · uftrace · Quelle: download.opensuse.org
Überblick
Function graph tracer for C/C++/Rust
Verlauf
uftrace is a userspace function graph tracer for C, C++, Rust, and Python programs. It records function entry and exit timing, can combine user, library, kernel, event, and scheduling information, and presents the execution flow through replay, reports, graphs, scripts, a TUI, and export formats.
The official repository was created in 2014. The README says uftrace was heavily inspired by the Linux kernel ftrace framework, and that the name combines user and ftrace.
The project began with compiler-supported function tracing but later added dynamic tracing. The README describes that shift explicitly: it initially supported tracing with compiler support, then gained the ability to trace without recompilation by analyzing function prologues and dynamically patching instructions.
Recent releases show the tool continuing to broaden language, architecture, and analysis support. The NEWS file records Python tracing in v0.14, RISC-V support in v0.15, separate debug-file support in v0.16, watchpoints in v0.17, filter-condition work in v0.18, and latency percentile scripting plus Chrome dump timestamp improvements in v0.19.
uftrace's adoption niche is developers and performance investigators who want call-graph-level tracing from a command-line tool, especially on Linux. Its package-manager footprint in this batch includes Homebrew, Debian, Nix, Ubuntu, and openSUSE, showing cross-distribution demand beyond its upstream GitHub audience.
The project also maintains package-awareness in its README by displaying Repology packaging status, a small signal that upstream expects distribution packages to be a major discovery and installation path.
Users can run uftrace live against a program, or record first and replay/report/graph/dump/analyze the saved `uftrace.data` directory. The command set includes `record`, `replay`, `report`, `live`, `info`, `dump`, `recv`, `graph`, `script`, and `tui`.
The tracing modes cover compiler instrumentation such as `-pg`, `-finstrument-functions`, and `-fpatchable-function-entry`, dynamic patching with `-P.`, PLT/library call tracing, Python tracing, kernel tracing through Linux ftrace, Linux event tracing, perf_event scheduling and PMU information, and SystemTap SDT user events.
uftrace also supports filters, function arguments and return values, Chrome trace viewer output, flame graphs, graphviz and mermaid call graphs, source-line information, and scripts through Python/LuaJIT APIs.
For package nerds, uftrace sits in the sweet spot between `strace`, profilers, kernel ftrace, and language-specific tracers. It is a single CLI that exposes a deep stack of optional capabilities, so distribution builds and optional dependencies materially affect what the installed package can do.
It is also notable because it brings kernel-tracing ideas to userspace debugging workflows while remaining scriptable and inspectable from the shell. That makes it attractive in package-manager ecosystems where developers want performance tools available with one install command.
Sicherheitslage
narrow executable package without higher-risk signals.
grün Risiko · niedrig Konfidenz · appliance
Prüfe vor unbeaufsichtigter Agent-Nutzung, ob das Tool Klartext-Credentials liest, Remote-Zustand schreibt, Artefakte veröffentlicht oder Plugins ausführt.
Executables
| Befehl | Art | Sichtbarkeit | Hinweis |
|---|---|---|---|
uftrace | cli | globales Executable |
Aktualität
Diese Signale trennen das Alter der Seitengenerierung, Aktivität des Paketmanagers und Upstream-Release-Vergleich. Versionsrückstand wird nur gemeldet, wenn eine Evidenz-URL und vergleichbare Versionen vorhanden sind.
https://github.com/namhyung/uftrace
Installationsmetadaten
| Paketschlüssel | brew:uftrace |
|---|---|
| Version | 0.19 |
| Paketmanager | Homebrew |
| Paketmanager-Seite | https://formulae.brew.sh/formula/uftrace |
| Homepage | https://uftrace.github.io/slide/ |
| Repository | https://github.com/namhyung/uftrace |
| Upstream-Dokumentation | https://github.com/namhyung/uftrace#readme |
| Lizenz | GPL-2.0-only |
| Quellarchiv | https://github.com/namhyung/uftrace/archive/refs/tags/v0.19.tar.gz |
| Abhängigkeiten | capstone, elfutils, libunwind, luajit, ncurses, python@3.14 |
| Build-Abhängigkeiten | pandoc, pkgconf |
| Bottle | verfügbar (auf arm64_linux, x86_64_linux) |
| Homebrew post-install | nicht definiert |
| Dienst | keiner deklariert |
Registry-Fakten
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | uftrace |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Requirements |
|
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
Source-Datenbank-Treffer
Treffer stammen aus externen Paketmanager-Indizes und bleiben von lokalen Automic-Vault-Paketlinks getrennt.
uftrace 0.17-1
Traces and analyzes execution of programs written in C/C++
https://github.com/namhyung/uftrace
sudo apt install uftraceuftrace
nix profile install nixpkgs#uftraceuftrace 0.15.2-1build2
Traces and analyzes execution of programs written in C/C++
https://github.com/namhyung/uftrace
sudo apt install uftraceuftrace 0.19-1.2
A function call graph tracer for C, C++, Rust and Python programs
https://github.com/namhyung/uftrace
sudo zypper install uftraceQuellspur
Diese Seite wird von av-web aus dem privaten Paket-SQLite-Artefakt bereitgestellt, das scripts/generate-pkg-sqlite.py erstellt.
View the package source record on GitHub.