Skip to content
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

fix: Fetch ELF debug files as well just to be safe if it is a Windows minidump #555

Merged
merged 10 commits into from
Sep 20, 2021
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: src/services/symbolication.rs
expression: response.await.unwrap()
source: crates/symbolicator/src/services/symbolication.rs
expression: response.unwrap()

---
status: completed
stacktraces:
Expand Down Expand Up @@ -29,6 +30,10 @@ modules:
image_addr: "0x100000000"
image_size: 4096
candidates:
- source: local
location: "http://localhost:<port>/download/50/2fc0a51ec13e479998684fa139dca7.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/502F/C0A5/1EC1/3E47/9998/684FA139DCA7"
download:
Expand All @@ -44,3 +49,4 @@ modules:
location: "http://localhost:<port>/download/502F/C0A5/1EC1/3E47/9998/684FA139DCA7.app"
download:
status: notfound

Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: src/services/symbolication.rs
expression: response.await.unwrap()
source: crates/symbolicator/src/services/symbolication.rs
expression: response.unwrap()

---
status: completed
timestamp: 1547055742
Expand Down Expand Up @@ -133,6 +134,18 @@ modules:
location: "http://localhost:<port>/download/2D90/3291/397D/3D14/BFCA/52C7FB8C5E00.app"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/2d/903291397d3d14bfca52c7fb8c5e00.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/YetAnotherMac/2D903291397D3D14BFCA52C7FB8C5E000/YetAnotherMa_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/YetAnotherMac/2D903291397D3D14BFCA52C7FB8C5E000/YetAnotherMac"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/YetAnotherMac/2D903291397D3D14BFCA52C7FB8C5E000/YetAnotherMac.sym"
download:
Expand Down Expand Up @@ -193,3 +206,4 @@ modules:
debug_file: /Users/bruno/Documents/Unreal Projects/YetAnotherMac/MacNoEditor/YetAnotherMac.app/Contents/UE4/Engine/Binaries/ThirdParty/PhysX3/Mac/libPxFoundationPROFILE.dylib
image_addr: "0x1131fa000"
image_size: 28671

Original file line number Diff line number Diff line change
@@ -1,19 +1,27 @@
---
source: src/services/symbolication.rs
source: crates/symbolicator/src/services/symbolication.rs
expression: cache_entries

---
- local_5d_7b6259552275a3c17bd4c3fd05f5a6bf40caa5
- local_5d_7b6259552275a3c17bd4c3fd05f5a6bf40caa5_debug
- local_5d_7b6259552275a3c17bd4c3fd05f5a6bf40caa5_src_zip
- local_b5_381a457906d279073822a5ceb24c4bfef94ddb
- local_b5_381a457906d279073822a5ceb24c4bfef94ddb_debug
- local_b5_381a457906d279073822a5ceb24c4bfef94ddb_src_zip
- local_crash_C0BCC3F19827FE653058404B2831D9E60_cras_
- local_crash_C0BCC3F19827FE653058404B2831D9E60_crash
- local_crash_C0BCC3F19827FE653058404B2831D9E60_crash_src_zip
- local_crash_C0BCC3F19827FE653058404B2831D9E60_crash_sym
- local_f1_c3bcc0279865fe3058404b2831d9e64135386c
- local_f1_c3bcc0279865fe3058404b2831d9e64135386c_debug
- local_f1_c3bcc0279865fe3058404b2831d9e64135386c_src_zip
- local_ld-2_23_so_59627B5D2255A375C17BD4C3FD05F5A60_ld-2_23_s_
- local_ld-2_23_so_59627B5D2255A375C17BD4C3FD05F5A60_ld-2_23_so
- local_ld-2_23_so_59627B5D2255A375C17BD4C3FD05F5A60_ld-2_23_so_src_zip
- local_ld-2_23_so_59627B5D2255A375C17BD4C3FD05F5A60_ld-2_23_so_sym
- local_libc-2_23_so_451A38B5067979D2073822A5CEB24C4B0_libc-2_23_s_
- local_libc-2_23_so_451A38B5067979D2073822A5CEB24C4B0_libc-2_23_so
- local_libc-2_23_so_451A38B5067979D2073822A5CEB24C4B0_libc-2_23_so_src_zip
- local_libc-2_23_so_451A38B5067979D2073822A5CEB24C4B0_libc-2_23_so_sym

Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: src/services/symbolication.rs
expression: response.await.unwrap()
source: crates/symbolicator/src/services/symbolication.rs
expression: response.unwrap()

---
status: completed
timestamp: 1522061032
Expand Down Expand Up @@ -127,6 +128,14 @@ modules:
image_addr: "0x400000"
image_size: 106496
candidates:
- source: local
location: "http://localhost:<port>/download/crash/C0BCC3F19827FE653058404B2831D9E60/cras_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash/C0BCC3F19827FE653058404B2831D9E60/crash"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash/C0BCC3F19827FE653058404B2831D9E60/crash.sym"
download:
Expand Down Expand Up @@ -178,6 +187,14 @@ modules:
location: "http://localhost:<port>/download/b5/381a457906d279073822a5ceb24c4bfef94ddb.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libc-2.23.so/451A38B5067979D2073822A5CEB24C4B0/libc-2.23.s_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libc-2.23.so/451A38B5067979D2073822A5CEB24C4B0/libc-2.23.so"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libc-2.23.so/451A38B5067979D2073822A5CEB24C4B0/libc-2.23.so.sym"
download:
Expand Down Expand Up @@ -251,6 +268,14 @@ modules:
location: "http://localhost:<port>/download/5d/7b6259552275a3c17bd4c3fd05f5a6bf40caa5.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/ld-2.23.so/59627B5D2255A375C17BD4C3FD05F5A60/ld-2.23.s_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/ld-2.23.so/59627B5D2255A375C17BD4C3FD05F5A60/ld-2.23.so"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/ld-2.23.so/59627B5D2255A375C17BD4C3FD05F5A60/ld-2.23.so.sym"
download:
Expand All @@ -270,3 +295,4 @@ modules:
debug_file: linux-gate.so
image_addr: "0x7fff5aef1000"
image_size: 8192

Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
---
source: src/services/symbolication.rs
source: crates/symbolicator/src/services/symbolication.rs
expression: cache_entries

---
- local_67E9_247C_814E_392B_A027_DBDE6748FCBF
- local_67E9_247C_814E_392B_A027_DBDE6748FCBF_app
- local_67E9_247C_814E_392B_A027_DBDE6748FCBF_src_zip
- local_67_e9247c814e392ba027dbde6748fcbf_debug
- local_9B2A_C56D_107C_3541_A127_9094A751F2C9
- local_9B2A_C56D_107C_3541_A127_9094A751F2C9_app
- local_9B2A_C56D_107C_3541_A127_9094A751F2C9_src_zip
- local_9b_2ac56d107c3541a1279094a751f2c9_debug
- local_crash_67E9247C814E392BA027DBDE6748FCBF0_cras_
- local_crash_67E9247C814E392BA027DBDE6748FCBF0_crash
- local_crash_67E9247C814E392BA027DBDE6748FCBF0_crash_src_zip
- local_crash_67E9247C814E392BA027DBDE6748FCBF0_crash_sym
- local_libdyld_dylib_9B2AC56D107C3541A1279094A751F2C90_libdyld_dyli_
- local_libdyld_dylib_9B2AC56D107C3541A1279094A751F2C90_libdyld_dylib
- local_libdyld_dylib_9B2AC56D107C3541A1279094A751F2C90_libdyld_dylib_src_zip
- local_libdyld_dylib_9B2AC56D107C3541A1279094A751F2C90_libdyld_dylib_sym

Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: src/services/symbolication.rs
expression: response.await.unwrap()
source: crates/symbolicator/src/services/symbolication.rs
expression: response.unwrap()

---
status: completed
timestamp: 1521713398
Expand Down Expand Up @@ -72,6 +73,10 @@ modules:
image_addr: "0x109b9b000"
image_size: 69632
candidates:
- source: local
location: "http://localhost:<port>/download/67/e9247c814e392ba027dbde6748fcbf.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/67E9/247C/814E/392B/A027/DBDE6748FCBF"
download:
Expand All @@ -80,6 +85,14 @@ modules:
location: "http://localhost:<port>/download/67E9/247C/814E/392B/A027/DBDE6748FCBF.app"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash/67E9247C814E392BA027DBDE6748FCBF0/cras_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash/67E9247C814E392BA027DBDE6748FCBF0/crash"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash/67E9247C814E392BA027DBDE6748FCBF0/crash.sym"
download:
Expand Down Expand Up @@ -318,6 +331,18 @@ modules:
location: "http://localhost:<port>/download/9B2A/C56D/107C/3541/A127/9094A751F2C9.app"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/9b/2ac56d107c3541a1279094a751f2c9.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libdyld.dylib/9B2AC56D107C3541A1279094A751F2C90/libdyld.dyli_"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libdyld.dylib/9B2AC56D107C3541A1279094A751F2C90/libdyld.dylib"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/libdyld.dylib/9B2AC56D107C3541A1279094A751F2C90/libdyld.dylib.sym"
download:
Expand Down Expand Up @@ -727,3 +752,4 @@ modules:
debug_file: libxpc.dylib
image_addr: "0x7fffe8134000"
image_size: 172032

Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
---
source: src/services/symbolication.rs
source: crates/symbolicator/src/services/symbolication.rs
expression: cache_entries

---
- local_57_898dab25000_debug
- local_59_0285e9e0000_debug
- local_59_b0d8f3183000_debug
- local_5a_49bb75c1000_debug
- local_5a_b380779000_debug
- local_crash_exe_5AB380779000_crash_ex_
- local_crash_exe_5AB380779000_crash_exe
- local_crash_pdb_3249D99D0C4049318610F4E4FB0B69361_crash_pd_
Expand Down Expand Up @@ -30,3 +36,4 @@ expression: cache_entries
- local_wrpcrt4_pdb_AE131C6727A74FA19916B5A4AEF411901_wrpcrt4_pd_
- local_wrpcrt4_pdb_AE131C6727A74FA19916B5A4AEF411901_wrpcrt4_pdb
- local_wrpcrt4_pdb_AE131C6727A74FA19916B5A4AEF411901_wrpcrt4_sym

Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: crates/symbolicator/src/services/symbolication.rs
expression: response.await.unwrap()
expression: response.unwrap()

---
status: completed
timestamp: 1521713273
Expand Down Expand Up @@ -169,6 +170,10 @@ modules:
image_addr: "0x2a0000"
image_size: 36864
candidates:
- source: local
location: "http://localhost:<port>/download/5a/b380779000.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/crash.exe/5AB380779000/crash.ex_"
download:
Expand Down Expand Up @@ -259,6 +264,10 @@ modules:
image_addr: "0x70b70000"
image_size: 151552
candidates:
- source: local
location: "http://localhost:<port>/download/57/898dab25000.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/dbgcore.dll/57898DAB25000/dbgcore.dl_"
download:
Expand Down Expand Up @@ -385,6 +394,10 @@ modules:
image_addr: "0x75050000"
image_size: 917504
candidates:
- source: local
location: "http://localhost:<port>/download/59/0285e9e0000.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/kernel32.dll/590285E9e0000/kernel32.dl_"
download:
Expand Down Expand Up @@ -436,6 +449,10 @@ modules:
image_addr: "0x75810000"
image_size: 790528
candidates:
- source: local
location: "http://localhost:<port>/download/5a/49bb75c1000.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/rpcrt4.dll/5A49BB75c1000/rpcrt4.dl_"
download:
Expand Down Expand Up @@ -502,6 +519,10 @@ modules:
image_addr: "0x77170000"
image_size: 1585152
candidates:
- source: local
location: "http://localhost:<port>/download/59/b0d8f3183000.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/ntdll.dll/59B0D8F3183000/ntdll.dl_"
download:
Expand All @@ -522,3 +543,4 @@ modules:
location: "http://localhost:<port>/download/wntdll.pdb/971F98E5CE6041FFB2D7235BBEB345781/wntdll.sym"
download:
status: notfound

Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
source: src/services/symbolication.rs
expression: response.await.unwrap()
source: crates/symbolicator/src/services/symbolication.rs
expression: response.unwrap()

---
status: completed
stacktraces:
Expand Down Expand Up @@ -29,6 +30,10 @@ modules:
image_addr: "0x100000000"
image_size: 4096
candidates:
- source: local
location: "http://localhost:<port>/download/50/2fc0a51ec13e479998684fa139dca7.debug"
download:
status: notfound
- source: local
location: "http://localhost:<port>/download/502F/C0A5/1EC1/3E47/9998/684FA139DCA7"
download:
Expand All @@ -44,3 +49,4 @@ modules:
location: "http://localhost:<port>/download/502F/C0A5/1EC1/3E47/9998/684FA139DCA7.app"
download:
status: notfound

28 changes: 25 additions & 3 deletions crates/symbolicator/src/sources.rs
Original file line number Diff line number Diff line change
Expand Up @@ -458,9 +458,31 @@ impl FileType {
#[inline]
pub fn from_object_type(ty: ObjectType) -> &'static [Self] {
match ty {
ObjectType::Macho => &[FileType::MachDebug, FileType::MachCode, FileType::Breakpad],
ObjectType::Pe => &[FileType::Pdb, FileType::Pe, FileType::Breakpad],
ObjectType::Elf => &[FileType::ElfDebug, FileType::ElfCode, FileType::Breakpad],
// There are instances where an application's debug files are ELFs despite the
// executable not being ELFs themselves. It probably isn't correct to assume that any
// specific debug file type is heavily coupled with a particular executable type so we
// return a union of all possible debug file types for native applications.
ObjectType::Macho => &[
FileType::MachCode,
FileType::Breakpad,
FileType::MachDebug,
FileType::Pdb,
FileType::ElfDebug,
],
ObjectType::Pe => &[
FileType::Pe,
FileType::Breakpad,
FileType::MachDebug,
FileType::Pdb,
FileType::ElfDebug,
],
ObjectType::Elf => &[
FileType::ElfCode,
FileType::Breakpad,
FileType::MachDebug,
FileType::Pdb,
FileType::ElfDebug,
],
ObjectType::Wasm => &[FileType::WasmCode, FileType::WasmDebug],
_ => Self::all(),
}
Expand Down
Loading