private static void handleOneWaySuccess( ServiceRequestContext ctx, RpcResponse rpcRes, CompletableFuture<HttpResponse> httpRes, SerializationFormat serializationFormat) { ctx.logBuilder().responseContent(rpcRes, null); respond(serializationFormat, HttpData.EMPTY_DATA, httpRes); }
@Override public boolean tryWrite(HttpObject obj) { final boolean published = super.tryWrite(obj); if (published && obj instanceof HttpData) { final int length = ((HttpData) obj).length(); inboundTrafficController.inc(length); assert ctx != null : "uninitialized DecodedHttpRequest must be aborted."; ctx.logBuilder().requestLength(transferredBytes); } return published; }
@Override public void endOfStream() { setClientStreamClosed(); if (!closeCalled) { if (!ctx.log().isAvailable(RequestLogAvailability.REQUEST_CONTENT)) { ctx.logBuilder().requestContent(GrpcLogUtil.rpcRequest(method), null); } if (useBlockingTaskExecutor) { ctx.blockingTaskExecutor().execute(this::invokeHalfClose); } else { invokeHalfClose(); } } }
private static HttpData encodeSuccess(ServiceRequestContext ctx, RpcResponse reply, SerializationFormat serializationFormat, String methodName, int seqId, TBase<?, ?> result) { final ByteBuf buf = ctx.alloc().buffer(128); boolean success = false; try { final TTransport transport = new TByteBufTransport(buf); final TProtocol outProto = ThriftProtocolFactories.get(serializationFormat).getProtocol(transport); final TMessage header = new TMessage(methodName, TMessageType.REPLY, seqId); outProto.writeMessageBegin(header); result.write(outProto); outProto.writeMessageEnd(); ctx.logBuilder().responseContent(reply, new ThriftReply(header, result)); final HttpData encoded = new ByteBufHttpData(buf, false); success = true; return encoded; } catch (TException e) { throw new Error(e); // Should never reach here. } finally { if (!success) { buf.release(); } } }
ctx.logBuilder().serializationFormat(serializationFormat); ctx.logBuilder().deferRequestContent(); req.aggregateWithPooledObjects(ctx.eventLoop(), ctx.alloc()).handle((aReq, cause) -> { if (cause != null) {
setClientStreamClosed(); messageFramer.close(); ctx.logBuilder().responseContent(GrpcLogUtil.rpcResponse(newStatus, firstResponse), null); if (newStatus.isOk()) { if (useBlockingTaskExecutor) {
ctx.logBuilder().requestContent(GrpcLogUtil.rpcRequest(method, request), null);
ctx.logBuilder().requestContent(decodedReq, new ThriftCall(header, args)); } catch (Exception e) { ctx.logBuilder().requestContent(null, null);
outProto.writeMessageEnd(); ctx.logBuilder().responseContent(reply, new ThriftReply(header, appException));
ctx.logBuilder().deferRequestContent(); ctx.logBuilder().deferResponseContent();
ctx.logBuilder().serializationFormat(serializationFormat); ctx.logBuilder().deferRequestContent(); ctx.logBuilder().deferResponseContent();
final HttpResponse res = HttpResponse.of(HttpStatus.OK); final RpcResponse rpcRes = RpcResponse.of("Hello, trustin!"); final RequestLogBuilder logBuilder = ctx.logBuilder(); logBuilder.requestContent(rpcReq, req); logBuilder.endRequest();
final RequestLogBuilder logBuilder = ctx.logBuilder(); if (!logBuilder.isRequestContentDeferred()) {
final RequestLogBuilder log = ctx.logBuilder(); log.endRequest(); log.endResponse();
final RequestLogBuilder log = ctx.logBuilder(); log.serializationFormat(ThriftSerializationFormats.BINARY); log.requestLength(64);
private static void handleOneWaySuccess( ServiceRequestContext ctx, RpcResponse rpcRes, CompletableFuture<HttpResponse> httpRes, SerializationFormat serializationFormat) { ctx.logBuilder().responseContent(rpcRes, null); respond(serializationFormat, HttpData.EMPTY_DATA, httpRes); }
private static void handleOneWaySuccess( ServiceRequestContext ctx, RpcResponse rpcRes, CompletableFuture<HttpResponse> httpRes, SerializationFormat serializationFormat) { ctx.logBuilder().responseContent(rpcRes, null); respond(serializationFormat, HttpData.EMPTY_DATA, httpRes); }
private static void handleOneWaySuccess( ServiceRequestContext ctx, RpcResponse rpcRes, CompletableFuture<HttpResponse> httpRes, SerializationFormat serializationFormat) { ctx.logBuilder().responseContent(rpcRes, null); respond(serializationFormat, HttpData.EMPTY_DATA, httpRes); }
@Override public void endOfStream() { setClientStreamClosed(); if (!closeCalled) { if (!ctx.log().isAvailable(RequestLogAvailability.REQUEST_CONTENT)) { ctx.logBuilder().requestContent(GrpcLogUtil.rpcRequest(method), null); } if (useBlockingTaskExecutor) { ctx.blockingTaskExecutor().execute(this::invokeHalfClose); } else { invokeHalfClose(); } } }
private static HttpData encodeSuccess(ServiceRequestContext ctx, RpcResponse reply, SerializationFormat serializationFormat, String methodName, int seqId, TBase<?, ?> result) { final ByteBuf buf = ctx.alloc().buffer(128); boolean success = false; try { final TTransport transport = new TByteBufTransport(buf); final TProtocol outProto = ThriftProtocolFactories.get(serializationFormat).getProtocol(transport); final TMessage header = new TMessage(methodName, TMessageType.REPLY, seqId); outProto.writeMessageBegin(header); result.write(outProto); outProto.writeMessageEnd(); ctx.logBuilder().responseContent(reply, new ThriftReply(header, result)); final HttpData encoded = new ByteBufHttpData(buf, false); success = true; return encoded; } catch (TException e) { throw new Error(e); // Should never reach here. } finally { if (!success) { buf.release(); } } }