summaryrefslogtreecommitdiff
path: root/src/mongo
diff options
context:
space:
mode:
authorAndy Schwerin <schwerin@mongodb.com>2015-12-17 18:50:31 -0500
committerAndy Schwerin <schwerin@mongodb.com>2015-12-21 17:40:07 -0500
commitcb3027ecfd55812756ba56d7881ce1b9053c6b90 (patch)
tree66474f1ac1073a2997142233867e849d56b2f05b /src/mongo
parent6d5a1ddf9333de4520a1303a02b2f1377e7fd622 (diff)
downloadmongo-cb3027ecfd55812756ba56d7881ce1b9053c6b90.tar.gz
SERVER-21960 Include symbol name in stacktrace json when available.
(cherry picked from commit da0c2e704aa0edc8830669865b984d8db861e01e)
Diffstat (limited to 'src/mongo')
-rw-r--r--src/mongo/util/stacktrace_posix.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mongo/util/stacktrace_posix.cpp b/src/mongo/util/stacktrace_posix.cpp
index db29165d59d..daa5f26185c 100644
--- a/src/mongo/util/stacktrace_posix.cpp
+++ b/src/mongo/util/stacktrace_posix.cpp
@@ -137,7 +137,11 @@ void printStackTrace(std::ostream& os) {
const uintptr_t fileOffset = uintptr_t(addresses[i]) - uintptr_t(dlinfo.dli_fbase);
if (i)
os << ',';
- os << "{\"b\":\"" << uintptr_t(dlinfo.dli_fbase) << "\",\"o\":\"" << fileOffset << "\"}";
+ os << "{\"b\":\"" << uintptr_t(dlinfo.dli_fbase) << "\",\"o\":\"" << fileOffset;
+ if (dlinfo.dli_sname) {
+ os << "\",\"s\":\"" << dlinfo.dli_sname;
+ }
+ os << "\"}";
}
os << ']';