public void startServerTracer(String contextPath) throws Exception { if (enabled) { submitEndpoint(contextPath); LOGGER.debug("Received no span state."); serverTracer.setStateUnknown(contextPath); serverTracer.setServerReceived(); } } public void submitEndpoint(String contextPath) throws Exception
private void beginTrace(final HttpServletRequest request) { if (!endPointSubmitter.endPointSubmitted()) { endPointSubmitter.submit(request.getLocalAddr(), request.getLocalPort(), getServiceName(request)); } final Optional<String> sampled = fromNullable(request.getHeader(BraveHttpHeaders.Sampled.getName())); if (!Boolean.valueOf(sampled.or(Boolean.TRUE.toString()))) { serverTracer.setStateNoTracing(); return; } updateServerState(request); serverTracer.setServerReceived(); }
@Override public Collection<KeyValueAnnotation> requestAnnotations() { String ipAddr = RpcContext.getContext().getUrl().getIp(); InetSocketAddress inetSocketAddress = RpcContext.getContext().getRemoteAddress(); final String clientName = clientNameProvider.resolveClientName(RpcContext.getContext()); serverTracer.setServerReceived(IPConversion.convertToInt(ipAddr),inetSocketAddress.getPort(),clientName); InetSocketAddress socketAddress = RpcContext.getContext().getLocalAddress(); if (socketAddress != null) { KeyValueAnnotation remoteAddrAnnotation = KeyValueAnnotation.create("address", socketAddress.toString()); return Collections.singleton(remoteAddrAnnotation); } else { return Collections.emptyList(); } }
/** * Like {@link #setServerReceived()}, except you can log the network context of the caller, for * example an IP address from the {@code X-Forwarded-For} header. * * @param ipv4 ipv4 of the client as an int. Ex for 1.2.3.4, it would be (1 << 24) | (2 << 16) | (3 << 8) | 4 * @param port port for client-side of the socket, or 0 if unknown * @param clientService lowercase {@link Endpoint#service_name name} of the callee service or * null if unknown * * @deprecated use {@link #setServerReceived(Endpoint)} */ @Deprecated public void setServerReceived(int ipv4, int port, @Nullable String clientService) { if (clientService == null) clientService = "unknown"; setServerReceived(Endpoint.builder().ipv4(ipv4).port(port).serviceName(clientService).build()); }
serverTracer.setStateUnknown(adapter.getSpanName()); serverTracer.setServerReceived(); for(KeyValueAnnotation annotation : adapter.requestAnnotations())
/** * Interface method implementation. Sets up the ServerTrace current trace and submits the service enpoint details to EndPointSubmitter * @see com.flipkart.phantom.task.spi.interceptor.RequestInterceptor#process(com.flipkart.phantom.task.spi.RequestWrapper) */ public void process(T request) { this.endPointSubmitter.submit(this.serviceHost, this.servicePort, this.serviceName); TraceData traceData = getTraceDataFromHeaders(request); if (Boolean.FALSE.equals(traceData.shouldBeTraced())) { this.serverTracer.setStateNoTracing(); } else { String spanName = this.getSpanName(traceData, request); if (traceData.getTraceId() != null && traceData.getSpanId() != null) { this.serverTracer.setStateCurrentTrace(traceData.getTraceId(), traceData.getSpanId(), traceData.getParentSpanId(), spanName); } else { this.serverTracer.setStateUnknown(spanName); } } final Optional<String> requestMetadata = request.getRequestMetaData(); if (requestMetadata.isPresent()) { this.serverTracer.submitBinaryAnnotation(REQUEST_ANNOTATION, requestMetadata.get()); } this.serverTracer.setServerReceived(); }
serverTracer.setServerReceived(); for(KeyValueAnnotation annotation : adapter.requestAnnotations())