Skip to content

Commit

Permalink
Include serviceInstanceId in controller error logging
Browse files Browse the repository at this point in the history
  • Loading branch information
royclarkson committed Sep 22, 2023
1 parent 103e973 commit 665cf06
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 50 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,14 @@ public class ServiceInstanceBindingController extends BaseController {

private static final String INFO_RESPONSE = "{} service instance binding succeeded: serviceInstanceId={}, " +
"bindingId={}";

private static final String DEBUG_REQUEST = "request={}";

private static final String DEBUG_RESPONSE = "response={}";

private static final String ERROR_RESPONSE = "Error {} service instance binding: serviceInstanceId={}; " +
"serviceBindingId={}; error={}";

private final ServiceInstanceBindingService service;

/**
Expand Down Expand Up @@ -149,8 +153,8 @@ public Mono<ResponseEntity<CreateServiceInstanceBindingResponse>> createServiceI
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error creating service instance binding. error=" +
e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "creating", serviceInstanceId,
bindingId, e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, getCreateResponseCode(response)))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.CREATED)));
}
Expand Down Expand Up @@ -192,15 +196,15 @@ public Mono<ResponseEntity<GetServiceInstanceBindingResponse>> getServiceInstanc
@RequestHeader(value = ServiceBrokerRequest.ORIGINATING_IDENTITY_HEADER, required = false) String originatingIdentityString,
@RequestHeader(value = ServiceBrokerRequest.REQUEST_IDENTITY_HEADER, required = false) String requestIdentity) {
return Mono.just(GetServiceInstanceBindingRequest.builder()
.serviceInstanceId(serviceInstanceId)
.bindingId(bindingId)
.serviceDefinitionId(serviceDefinitionId)
.planId(planId)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.serviceInstanceId(serviceInstanceId)
.bindingId(bindingId)
.serviceDefinitionId(serviceDefinitionId)
.planId(planId)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.flatMap(req -> service.getServiceInstanceBinding(req)
.doOnRequest(v -> {
if (LOG.isInfoEnabled()) {
Expand All @@ -218,8 +222,8 @@ public Mono<ResponseEntity<GetServiceInstanceBindingResponse>> getServiceInstanc
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error getting service instance binding. error=" +
e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "getting", serviceInstanceId,
bindingId, e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, HttpStatus.OK))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.OK)))
.onErrorResume(e -> {
Expand Down Expand Up @@ -259,16 +263,16 @@ public Mono<ResponseEntity<GetLastServiceBindingOperationResponse>> getServiceIn
@RequestHeader(value = ServiceBrokerRequest.ORIGINATING_IDENTITY_HEADER, required = false) String originatingIdentityString,
@RequestHeader(value = ServiceBrokerRequest.REQUEST_IDENTITY_HEADER, required = false) String requestIdentity) {
return Mono.just(GetLastServiceBindingOperationRequest.builder()
.serviceDefinitionId(serviceDefinitionId)
.serviceInstanceId(serviceInstanceId)
.bindingId(bindingId)
.planId(planId)
.operation(operation)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.serviceDefinitionId(serviceDefinitionId)
.serviceInstanceId(serviceInstanceId)
.bindingId(bindingId)
.planId(planId)
.operation(operation)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.flatMap(request -> service.getLastOperation(request)
.doOnRequest(v -> {
if (LOG.isInfoEnabled()) {
Expand All @@ -287,8 +291,8 @@ public Mono<ResponseEntity<GetLastServiceBindingOperationResponse>> getServiceIn
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error getting service instance binding last operation. error=" +
e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "getting last operation for",
serviceInstanceId, bindingId, e.getMessage()), e)))
.flatMap(response -> Mono
.just(response.getState().equals(OperationState.SUCCEEDED) && response.isDeleteOperation())
.flatMap(isSuccessfulDelete ->
Expand Down Expand Up @@ -356,8 +360,8 @@ public Mono<ResponseEntity<DeleteServiceInstanceBindingResponse>> deleteServiceI
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error deleting a service instance binding. error=" +
e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "deleting", serviceInstanceId,
bindingId, e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, getAsyncResponseCode(response)))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.OK)))
.onErrorResume(e -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@ public class ServiceInstanceController extends BaseController {

private static final String DEBUG_RESPONSE = "response={}";

private static final String ERROR_RESPONSE = "Error {} service instance: serviceInstanceId={}; error={}";

private final ServiceInstanceService service;

/**
Expand Down Expand Up @@ -145,7 +147,8 @@ public Mono<ResponseEntity<CreateServiceInstanceResponse>> createServiceInstance
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error creating service instance. error=" + e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "creating", serviceInstanceId,
e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, getCreateResponseCode(response)))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.CREATED)));
}
Expand Down Expand Up @@ -185,14 +188,14 @@ public Mono<ResponseEntity<GetServiceInstanceResponse>> getServiceInstance(
@RequestHeader(value = ServiceBrokerRequest.ORIGINATING_IDENTITY_HEADER, required = false) String originatingIdentityString,
@RequestHeader(value = ServiceBrokerRequest.REQUEST_IDENTITY_HEADER, required = false) String requestIdentity) {
return Mono.just(GetServiceInstanceRequest.builder()
.serviceInstanceId(serviceInstanceId)
.serviceDefinitionId(serviceDefinitionId)
.planId(planId)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.serviceInstanceId(serviceInstanceId)
.serviceDefinitionId(serviceDefinitionId)
.planId(planId)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.flatMap(request -> service.getServiceInstance(request)
.doOnRequest(v -> {
if (LOG.isInfoEnabled()) {
Expand All @@ -210,7 +213,8 @@ public Mono<ResponseEntity<GetServiceInstanceResponse>> getServiceInstance(
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error getting service instance. error=" + e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "getting", serviceInstanceId,
e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, HttpStatus.OK))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.OK)))
.onErrorResume(e -> {
Expand Down Expand Up @@ -247,15 +251,15 @@ public Mono<ResponseEntity<GetLastServiceOperationResponse>> getServiceInstanceL
@RequestHeader(value = ServiceBrokerRequest.ORIGINATING_IDENTITY_HEADER, required = false) String originatingIdentityString,
@RequestHeader(value = ServiceBrokerRequest.REQUEST_IDENTITY_HEADER, required = false) String requestIdentity) {
return Mono.just(GetLastServiceOperationRequest.builder()
.serviceDefinitionId(serviceDefinitionId)
.serviceInstanceId(serviceInstanceId)
.planId(planId)
.operation(operation)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.serviceDefinitionId(serviceDefinitionId)
.serviceInstanceId(serviceInstanceId)
.planId(planId)
.operation(operation)
.platformInstanceId(pathVariables.get(ServiceBrokerRequest.PLATFORM_INSTANCE_ID_VARIABLE))
.apiInfoLocation(apiInfoLocation)
.originatingIdentity(parseOriginatingIdentity(originatingIdentityString))
.requestIdentity(requestIdentity)
.build())
.flatMap(request -> service.getLastOperation(request)
.doOnRequest(v -> {
if (LOG.isInfoEnabled()) {
Expand All @@ -273,8 +277,8 @@ public Mono<ResponseEntity<GetLastServiceOperationResponse>> getServiceInstanceL
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error getting service instance last operation. error=" +
e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "getting last operation for",
serviceInstanceId, e.getMessage()), e)))
.map(response -> {
boolean isSuccessfulDelete = OperationState.SUCCEEDED.equals(response.getState()) && response
.isDeleteOperation();
Expand Down Expand Up @@ -348,7 +352,8 @@ public Mono<ResponseEntity<DeleteServiceInstanceResponse>> deleteServiceInstance
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error deleting a service instance. error=" + e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "deleting", serviceInstanceId,
e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, getAsyncResponseCode(response)))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.OK)))
.onErrorResume(e -> {
Expand Down Expand Up @@ -415,7 +420,8 @@ public Mono<ResponseEntity<UpdateServiceInstanceResponse>> updateServiceInstance
LOG.debug(DEBUG_RESPONSE, response);
}
})
.doOnError(e -> LOG.error("Error updating service instance. error=" + e.getMessage(), e)))
.doOnError(e -> LOG.error(String.format(ERROR_RESPONSE, "updating", serviceInstanceId,
e.getMessage()), e)))
.map(response -> new ResponseEntity<>(response, getAsyncResponseCode(response)))
.switchIfEmpty(Mono.just(new ResponseEntity<>(HttpStatus.OK)));
}
Expand Down

0 comments on commit 665cf06

Please sign in to comment.