Elek, Marton created HDDS-2067: ---------------------------------- Summary: Create generic service facade with tracing/metrics/logging support Key: HDDS-2067 URL: https://issues.apache.org/jira/browse/HDDS-2067 Project: Hadoop Distributed Data Store Issue Type: Sub-task Reporter: Elek, Marton
We started to use a message based GRPC approach. Wen have only one method and the requests are routed based on a "type" field in the proto message. For example in OM protocol: {code} /** The OM service that takes care of Ozone namespace. */ service OzoneManagerService { // A client-to-OM RPC to send client requests to OM Ratis server rpc submitRequest(OMRequest) returns(OMResponse); } {code} And {code} message OMRequest { required Type cmdType = 1; // Type of the command ... {code} This approach makes it possible to use the same code to process incoming messages in the server side. ScmBlockLocationProtocolServerSideTranslatorPB.send method contains the logic of: * Logging the request/response message (can be displayed with ozone insight) * Updated metrics * Handle open tracing context propagation. These functions are generic. For example OzoneManagerProtocolServerSideTranslatorPB use the same (=similar) code. The goal in this jira is to provide a generic utility and move the common code for tracing/request logging/response logging/metrics calculation to a common utility which can be used from all the ServerSide translators. -- This message was sent by Atlassian Jira (v8.3.2#803003) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org