slfan1989 commented on code in PR #4963:
URL: https://github.com/apache/hadoop/pull/4963#discussion_r988615315
##########
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/federation/FederationStateStoreService.java:
##########
@@ -253,129 +259,378 @@ public Version loadVersion() {
@Override
public GetSubClusterPolicyConfigurationResponse getPolicyConfiguration(
GetSubClusterPolicyConfigurationRequest request) throws YarnException {
- return stateStoreClient.getPolicyConfiguration(request);
+ try {
+ long startTime = clock.getTime();
+ GetSubClusterPolicyConfigurationResponse response =
+ stateStoreClient.getPolicyConfiguration(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getPolicyConfiguration error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public SetSubClusterPolicyConfigurationResponse setPolicyConfiguration(
SetSubClusterPolicyConfigurationRequest request) throws YarnException {
- return stateStoreClient.setPolicyConfiguration(request);
+ try {
+ long startTime = clock.getTime();
+ SetSubClusterPolicyConfigurationResponse response =
+ stateStoreClient.setPolicyConfiguration(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("setPolicyConfiguration error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public GetSubClusterPoliciesConfigurationsResponse getPoliciesConfigurations(
GetSubClusterPoliciesConfigurationsRequest request) throws YarnException
{
- return stateStoreClient.getPoliciesConfigurations(request);
+ try {
+ long startTime = clock.getTime();
+ GetSubClusterPoliciesConfigurationsResponse response =
+ stateStoreClient.getPoliciesConfigurations(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getPoliciesConfigurations error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public SubClusterRegisterResponse registerSubCluster(
SubClusterRegisterRequest registerSubClusterRequest)
throws YarnException {
- return stateStoreClient.registerSubCluster(registerSubClusterRequest);
+ try {
+ long startTime = clock.getTime();
+ SubClusterRegisterResponse response =
+ stateStoreClient.registerSubCluster(registerSubClusterRequest);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("registerSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public SubClusterDeregisterResponse deregisterSubCluster(
SubClusterDeregisterRequest subClusterDeregisterRequest)
throws YarnException {
- return stateStoreClient.deregisterSubCluster(subClusterDeregisterRequest);
+ try {
+ long startTime = clock.getTime();
+ SubClusterDeregisterResponse response =
+ stateStoreClient.deregisterSubCluster(subClusterDeregisterRequest);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("deregisterSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public SubClusterHeartbeatResponse subClusterHeartbeat(
SubClusterHeartbeatRequest subClusterHeartbeatRequest)
throws YarnException {
- return stateStoreClient.subClusterHeartbeat(subClusterHeartbeatRequest);
+ try {
+ long startTime = clock.getTime();
+ SubClusterHeartbeatResponse response =
+ stateStoreClient.subClusterHeartbeat(subClusterHeartbeatRequest);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("subClusterHeartbeat error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public GetSubClusterInfoResponse getSubCluster(
GetSubClusterInfoRequest subClusterRequest) throws YarnException {
- return stateStoreClient.getSubCluster(subClusterRequest);
+ try {
+ long startTime = clock.getTime();
+ GetSubClusterInfoResponse response =
+ stateStoreClient.getSubCluster(subClusterRequest);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public GetSubClustersInfoResponse getSubClusters(
GetSubClustersInfoRequest subClustersRequest) throws YarnException {
- return stateStoreClient.getSubClusters(subClustersRequest);
+ try {
+ long startTime = clock.getTime();
+ GetSubClustersInfoResponse response =
+ stateStoreClient.getSubClusters(subClustersRequest);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getSubClusters error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public AddApplicationHomeSubClusterResponse addApplicationHomeSubCluster(
AddApplicationHomeSubClusterRequest request) throws YarnException {
- return stateStoreClient.addApplicationHomeSubCluster(request);
+ try {
+ long startTime = clock.getTime();
+ AddApplicationHomeSubClusterResponse response =
+ stateStoreClient.addApplicationHomeSubCluster(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("addApplicationHomeSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public UpdateApplicationHomeSubClusterResponse
updateApplicationHomeSubCluster(
UpdateApplicationHomeSubClusterRequest request) throws YarnException {
- return stateStoreClient.updateApplicationHomeSubCluster(request);
+ try {
+ long startTime = clock.getTime();
+ UpdateApplicationHomeSubClusterResponse response =
+ stateStoreClient.updateApplicationHomeSubCluster(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("updateApplicationHomeSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public GetApplicationHomeSubClusterResponse getApplicationHomeSubCluster(
GetApplicationHomeSubClusterRequest request) throws YarnException {
- return stateStoreClient.getApplicationHomeSubCluster(request);
+ try {
+ long startTime = clock.getTime();
+ GetApplicationHomeSubClusterResponse response =
+ stateStoreClient.getApplicationHomeSubCluster(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getApplicationHomeSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public GetApplicationsHomeSubClusterResponse getApplicationsHomeSubCluster(
GetApplicationsHomeSubClusterRequest request) throws YarnException {
- return stateStoreClient.getApplicationsHomeSubCluster(request);
+ try {
+ long startTime = clock.getTime();
+ GetApplicationsHomeSubClusterResponse response =
+ stateStoreClient.getApplicationsHomeSubCluster(request);
+ long stopTime = clock.getTime();
+ FederationStateStoreServiceMetrics.succeededStateStoreServiceCall(
+ stopTime - startTime);
+ return response;
+ } catch (YarnException e) {
+ LOG.error("getApplicationsHomeSubCluster error.", e);
+ FederationStateStoreServiceMetrics.failedStateStoreServiceCall();
+ throw e;
+ }
}
@Override
public DeleteApplicationHomeSubClusterResponse
deleteApplicationHomeSubCluster(
DeleteApplicationHomeSubClusterRequest request) throws YarnException {
- return stateStoreClient.deleteApplicationHomeSubCluster(request);
+ try {
Review Comment:
Thanks for your suggestion, I will refactor this part of the code to use a
generic method instead.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]