-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automatically download user space debug symbols using a debuginfod service #1774
Labels
enhancement
New feature or request, changes on existing features
Comments
rupran
added a commit
to rupran/bcc
that referenced
this issue
Apr 30, 2021
This change adds debuginfod as a new source for debug information. By using libdebuginfod we can query a server for a file containing debug information for a given ELF binary. The environment variable DEBUGINFOD_URLS has to be defined to an URL for a debuginfod server providing debug information files for your distribution or the federating server provided by the elfutils project: For example, to use the Fedora server, you would need: $ export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org/" Or for the elfutils server which federates to servers for openSUSE, Void Linux, Debian and Fedora, among others: $ export DEBUGINFOD_URLS="https://debuginfod.elfutils.org/" Calls to the debuginfod_find_debuginfo function from libdebuginfod will fail if the environment variable is not set, otherwise the library will attempt to download debug information for a build ID extracted from the binary in question and store it in a local cache directory. Fixes bpftrace/bpftrace#1774 Signed-off-by: Andreas Ziegler <[email protected]>
rupran
added a commit
to rupran/bcc
that referenced
this issue
Apr 30, 2021
This change adds debuginfod as a new source for debug information. By using libdebuginfod we can query a server for a file containing debug information for a given ELF binary. The environment variable DEBUGINFOD_URLS has to be defined to an URL for a debuginfod server providing debug information files for your distribution or the federating server provided by the elfutils project: For example, to use the Fedora server, you would need: $ export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org/" Or for the elfutils server which federates to servers for openSUSE, Void Linux, Debian and Fedora, among others: $ export DEBUGINFOD_URLS="https://debuginfod.elfutils.org/" Calls to the debuginfod_find_debuginfo function from libdebuginfod will fail if the environment variable is not set, otherwise the library will attempt to download debug information for a build ID extracted from the binary in question and store it in a local cache directory. Fixes bpftrace/bpftrace#1774 Signed-off-by: Andreas Ziegler <[email protected]>
As the code dealing with debug information resides in iovisor/bcc, I implemented the debuginfod integration there, happy to take comments and suggestions! |
rupran
added a commit
to rupran/bcc
that referenced
this issue
May 6, 2021
This change adds debuginfod as a new source for debug information. By using libdebuginfod we can query a server for a file containing debug information for a given ELF binary. The environment variable DEBUGINFOD_URLS has to be defined to an URL for a debuginfod server providing debug information files for your distribution or the federating server provided by the elfutils project: For example, to use the Fedora server, you would need: $ export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org/" Or for the elfutils server which federates to servers for openSUSE, Void Linux, Debian and Fedora, among others: $ export DEBUGINFOD_URLS="https://debuginfod.elfutils.org/" Calls to the debuginfod_find_debuginfo function from libdebuginfod will fail if the environment variable is not set, otherwise the library will attempt to download debug information for a build ID extracted from the binary in question and store it in a local cache directory. Fixes bpftrace/bpftrace#1774 Signed-off-by: Andreas Ziegler <[email protected]>
yonghong-song
pushed a commit
to iovisor/bcc
that referenced
this issue
May 9, 2021
This change adds debuginfod as a new source for debug information. By using libdebuginfod we can query a server for a file containing debug information for a given ELF binary. The environment variable DEBUGINFOD_URLS has to be defined to an URL for a debuginfod server providing debug information files for your distribution or the federating server provided by the elfutils project: For example, to use the Fedora server, you would need: $ export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org/" Or for the elfutils server which federates to servers for openSUSE, Void Linux, Debian and Fedora, among others: $ export DEBUGINFOD_URLS="https://debuginfod.elfutils.org/" Calls to the debuginfod_find_debuginfo function from libdebuginfod will fail if the environment variable is not set, otherwise the library will attempt to download debug information for a build ID extracted from the binary in question and store it in a local cache directory. Fixes bpftrace/bpftrace#1774 Signed-off-by: Andreas Ziegler <[email protected]>
Any ideas on how to make this work on Fedora 38?
What am I missing? Edit: Aha! Solution:
|
CrackerCat
pushed a commit
to CrackerCat/bcc
that referenced
this issue
Jul 31, 2024
This change adds debuginfod as a new source for debug information. By using libdebuginfod we can query a server for a file containing debug information for a given ELF binary. The environment variable DEBUGINFOD_URLS has to be defined to an URL for a debuginfod server providing debug information files for your distribution or the federating server provided by the elfutils project: For example, to use the Fedora server, you would need: $ export DEBUGINFOD_URLS="https://debuginfod.fedoraproject.org/" Or for the elfutils server which federates to servers for openSUSE, Void Linux, Debian and Fedora, among others: $ export DEBUGINFOD_URLS="https://debuginfod.elfutils.org/" Calls to the debuginfod_find_debuginfo function from libdebuginfod will fail if the environment variable is not set, otherwise the library will attempt to download debug information for a build ID extracted from the binary in question and store it in a local cache directory. Fixes bpftrace/bpftrace#1774 Signed-off-by: Andreas Ziegler <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Debugging symbols need to be installed in order to probe user space programs with bpftrace:
After installing the right package - in this case with
apt install coreutils-dbgsym
given that I am on a Debian system:GDB and SystemTap support using a debuginfod service in order to automatically fetch the appropriate debuginfo symbols from the network without any user intervention. It would be great if this feature could be added to bpftrace as well.
The text was updated successfully, but these errors were encountered: