ndimiduk commented on a change in pull request #754: HBASE-22978 : Online slow
response log
URL: https://github.com/apache/hbase/pull/754#discussion_r371456657
##########
File path:
hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java
##########
@@ -3368,4 +3430,58 @@ public static RegionStatesCount
toTableRegionStatesCount(
.build();
}
+ /**
+ * Convert Protobuf class
+ * {@link
org.apache.hadoop.hbase.shaded.protobuf.generated.TooSlowLog.SlowLogPayload}
+ * To client SlowLog Payload class {@link SlowLogPayload}
+ *
+ * @param slowLogPayload SlowLog Payload protobuf instance
+ * @return SlowLog Payload for client usecase
+ */
+ private static SlowLogPayload getSlowLogPayload(
+ final TooSlowLog.SlowLogPayload slowLogPayload) {
+ SlowLogPayload clientSlowLogPayload = new
SlowLogPayload.SlowLogPayloadBuilder()
+ .setStartTime(slowLogPayload.getStartTime())
+ .setProcessingTime(slowLogPayload.getProcessingTime())
+ .setQueueTime(slowLogPayload.getQueueTime())
+ .setResponseSize(slowLogPayload.getResponseSize())
+ .setClientAddress(slowLogPayload.getClientAddress())
+ .setServerClass(slowLogPayload.getServerClass())
+ .setMethodName(slowLogPayload.getMethodName())
+ .setCallDetails(slowLogPayload.getCallDetails())
+ .setParam(slowLogPayload.getParam())
+ .setRegionName(slowLogPayload.getRegionName())
+ .setUserName(slowLogPayload.getUserName())
+ .setMultiGetsCount(slowLogPayload.getMultiGets())
+ .setMultiMutationsCount(slowLogPayload.getMultiMutations())
+ .setMultiServiceCalls(slowLogPayload.getMultiServiceCalls())
+ .build();
+ return clientSlowLogPayload;
+ }
+
+ /**
+ * Convert AdminProtos#SlowLogResponses to list of {@link SlowLogPayload}
+ *
+ * @param slowLogResponses slowlog response protobuf instance
+ * @return list of SlowLog payloads for client usecase
+ */
+ public static List<SlowLogPayload> toSlowLogPayloads(
+ final AdminProtos.SlowLogResponses slowLogResponses) {
+ List<SlowLogPayload> slowLogPayloads = new ArrayList<>();
+ for (TooSlowLog.SlowLogPayload slowLogPayload :
slowLogResponses.getSlowLogPayloadsList()) {
Review comment:
This is an ideal use case for a `Stream.collect`.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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