Skip to content

Commit 1b8a230

Browse files
committed
core: add PerfMark tracing and tags to ServerCallImpl and ServerStreamListenerImpl triggerEvent
Wrap ServerCallImpl.triggerEvent and ServerStreamListenerImpl.triggerEvent in PerfMark.traceTask with PerfMark.attachTag, aligning them with sendMessage, sendHeaders, close, request, and listener callbacks. TAG=agy CONV=e1bfa5a2-e855-4f79-abdd-ef2b264977be
1 parent 48aee63 commit 1b8a230

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

core/src/main/java/io/grpc/internal/ServerCallImpl.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,10 @@ public MethodDescriptor<ReqT, RespT> getMethodDescriptor() {
256256

257257
@Override
258258
public void triggerEvent(Object event) {
259-
stream.triggerEvent(event);
259+
try (TaskCloseable ignore = PerfMark.traceTask("ServerCall.triggerEvent")) {
260+
PerfMark.attachTag(tag);
261+
stream.triggerEvent(event);
262+
}
260263
}
261264

262265
@Override
@@ -403,10 +406,13 @@ public void onReady() {
403406

404407
@Override
405408
public void triggerEvent(Object event) {
406-
if (call.cancelled) {
407-
return;
409+
try (TaskCloseable ignore = PerfMark.traceTask("ServerStreamListener.triggerEvent")) {
410+
PerfMark.attachTag(call.tag);
411+
if (call.cancelled) {
412+
return;
413+
}
414+
listener.onEvent(event);
408415
}
409-
listener.onEvent(event);
410416
}
411417
}
412418
}

0 commit comments

Comments
 (0)