elek opened a new pull request #507: HDDS-1154. Add tracing to the client side 
of StorageContainerLocationProtocol and OzoneManagerProtocol
URL: https://github.com/apache/hadoop/pull/507
 
 
   The best way to display the network performance in the tracing server is to 
start a new span (=save tracing information) on both of the client and and 
server side.
   
   This issue is about improving the client side tracing of OzoneManager and 
StorageLocationManager.
   
   The easiest way to turn on tracing for a class which implements an interface 
is to create a java proxy with TracingUtil.createProxy. With this utility we 
can execute the required tracing methods (create span/close span) around the 
original methods without adding any boilerplate code.
   
   Thanks to the current design hadoop rpc calls are create by the 
*ClientSideTranslatorPB classes which implements the original protocol 
interface (eg. StorageContainerLocationProtocolClientSideTranslatorPB 
implements StorageContainerLocationProtocol) which means that it can easily 
instrumented by TracingUtil.createProxy.
   
   The only thing what we need is to use the interface everywhere 
(StorageContainerLocationProtocol) instead of the implementation 
(ClientSideTranslator) as a client.
   
   The only required method which is not published in the ClientSideTranslator 
is the close method. With adding the close method to the interface (extends 
Closable) we are able to use the interface everywhere which can be instrumented 
to send the tracing information.
   
   See: https://issues.apache.org/jira/browse/HDDS-1154

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to