[ 
https://issues.apache.org/jira/browse/HDDS-1154?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anu Engineer updated HDDS-1154:
-------------------------------
       Resolution: Fixed
    Fix Version/s: 0.4.0
           Status: Resolved  (was: Patch Available)

[~elek] Thank you for the contribution, I have just committed this to the 
trunk. I have verified that checkstyle and findbugs issues reported in the 
Jenkins is not present in the latest patch.

> Add tracing to the client side of StorageContainerLocationProtocol and 
> OzoneManagerProtocol
> -------------------------------------------------------------------------------------------
>
>                 Key: HDDS-1154
>                 URL: https://issues.apache.org/jira/browse/HDDS-1154
>             Project: Hadoop Distributed Data Store
>          Issue Type: Sub-task
>            Reporter: Elek, Marton
>            Assignee: Elek, Marton
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 0.4.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> 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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to