end spans on cancel

This commit is contained in:
a10zn8
2023-08-21 13:53:11 +04:00
parent 1562cc35c6
commit fd6f617ed2
2 changed files with 10 additions and 7 deletions

View File

@@ -33,16 +33,16 @@ class SpannedReader<K, D>(
return reader.read(key) return reader.read(key)
.contextWrite { ReactorSleuth.putSpanInScope(tracer, it, newSpan) } .contextWrite { ReactorSleuth.putSpanInScope(tracer, it, newSpan) }
.doOnError { .doOnError {
newSpan.apply { newSpan.tag(SPAN_ERROR, "true")
tag(SPAN_ERROR, "true") .tag(SPAN_STATUS_MESSAGE, it.message)
tag(SPAN_STATUS_MESSAGE, it.message) .end()
end()
}
} }
.doOnNext { newSpan.end() } .doOnNext { newSpan.end() }
.doOnCancel {
newSpan.tag(SPAN_STATUS_MESSAGE, "cancelled").end()
}
.switchIfEmpty { .switchIfEmpty {
newSpan.tag(SPAN_READER_RESULT, "empty result") newSpan.tag(SPAN_READER_RESULT, "empty result").end()
newSpan.end()
Mono.empty() Mono.empty()
} }
} }

View File

@@ -124,6 +124,9 @@ open class NativeCall(
) )
} }
.doOnNext { callRes -> completeSpan(callRes, requestCount) } .doOnNext { callRes -> completeSpan(callRes, requestCount) }
.doOnCancel {
tracer.currentSpan()?.tag(SPAN_STATUS_MESSAGE, "cancel")?.end()
}
.contextWrite { ctx -> createTracingReactorContext(ctx, requestCount, requestId, requestSpan) } .contextWrite { ctx -> createTracingReactorContext(ctx, requestCount, requestId, requestSpan) }
} }
} }