aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt')
-rw-r--r--src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt b/src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt
index df588a8..96b70ec 100644
--- a/src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt
+++ b/src/main/kotlin/moe/nea/ledger/utils/telemetry/ExceptionContextValue.kt
@@ -22,8 +22,9 @@ class ExceptionContextValue(val exception: Throwable) : ContextValue {
obj.addProperty("message", exception.message)
// TODO: allow exceptions to implement an "extra info" interface
if (searchDepth > 0) {
- if (exception.cause != null) {
- obj.add("cause", walkExceptions(exception, searchDepth - 1))
+ val cause = exception.cause
+ if (cause != null && cause !== exception) {
+ obj.add("cause", walkExceptions(cause, searchDepth - 1))
}
val suppressions = JsonArray()
for (suppressedException in exception.suppressedExceptions) {