@@ -455,11 +455,14 @@ private SpanData waitSpan(String name) {
455455    return  traceRule .getSpans ().stream ().filter (s  -> s .getName ().equals (name )).findFirst ().get ();
456456  }
457457
458-   private  void  assertRpcAttribute (SpanData  data , String  methodName ) {
458+   private  void  assertRpcAttribute (SpanData  data , String  methodName ,  InetSocketAddress   addr ) {
459459    assertEquals (SERVICE .getDescriptorForType ().getName (),
460460      data .getAttributes ().get (TraceUtil .RPC_SERVICE_KEY ));
461-     assertEquals (methodName ,
462-       data .getAttributes ().get (TraceUtil .RPC_METHOD_KEY ));
461+     assertEquals (methodName , data .getAttributes ().get (TraceUtil .RPC_METHOD_KEY ));
462+     if  (addr  != null ) {
463+       assertEquals (addr .getHostName (), data .getAttributes ().get (TraceUtil .REMOTE_HOST_KEY ));
464+       assertEquals (addr .getPort (), data .getAttributes ().get (TraceUtil .REMOTE_PORT_KEY ).intValue ());
465+     }
463466  }
464467
465468  @ Test 
@@ -471,8 +474,8 @@ public void testTracing() throws IOException, ServiceException {
471474      rpcServer .start ();
472475      BlockingInterface  stub  = newBlockingStub (client , rpcServer .getListenerAddress ());
473476      stub .pause (null , PauseRequestProto .newBuilder ().setMs (100 ).build ());
474-       assertRpcAttribute (waitSpan ("RpcClient.callMethod" ), "pause" );
475-       assertRpcAttribute (waitSpan ("RpcServer.callMethod" ), "pause" );
477+       assertRpcAttribute (waitSpan ("RpcClient.callMethod" ), "pause" ,  rpcServer . getListenerAddress () );
478+       assertRpcAttribute (waitSpan ("RpcServer.callMethod" ), "pause" ,  null );
476479      assertSameTraceId ();
477480      for  (SpanData  data  : traceRule .getSpans ()) {
478481        assertThat (
@@ -484,8 +487,8 @@ public void testTracing() throws IOException, ServiceException {
484487      traceRule .clearSpans ();
485488      assertThrows (ServiceException .class ,
486489        () -> stub .error (null , EmptyRequestProto .getDefaultInstance ()));
487-       assertRpcAttribute (waitSpan ("RpcClient.callMethod" ), "error" );
488-       assertRpcAttribute (waitSpan ("RpcServer.callMethod" ), "error" );
490+       assertRpcAttribute (waitSpan ("RpcClient.callMethod" ), "error" ,  rpcServer . getListenerAddress () );
491+       assertRpcAttribute (waitSpan ("RpcServer.callMethod" ), "error" ,  null );
489492      assertSameTraceId ();
490493      for  (SpanData  data  : traceRule .getSpans ()) {
491494        assertEquals (StatusCode .ERROR , data .getStatus ().getStatusCode ());
0 commit comments