As a coab ops,
In order to diagnose failed service instance
I need some error failure without leaking security sensitive details such as the inner broker endpoint
Observed behavior
No details is provided, the details are available within the broker logs.
observed logs
```
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:52.375 WARN 7 --- [nio-8080-exec-1] .o.o.c.b.o.o.p.PipelineCompletionTracker : Caught during provision delegation. Hint: if meeting 404 broke
r endpoint, check configuration mismatch between broker url endpoint property, and deployment bosh template
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT feign.FeignException$Unauthorized: [401 Unauthorized] during [GET] to [https://d-mysql-t_e9d2bb15-6c6c-46d5-b393-081c43d494b2.osb-data-services.mydomain.org/v2/catalog] [CatalogServiceClient#getCatalog(String)]: [HTTP Basic: Access denied.
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT ]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.clientErrorStatus(FeignException.java:215) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.errorStatus(FeignException.java:194) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.errorStatus(FeignException.java:185) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.codec.ErrorDecoder$Default.decode(ErrorDecoder.java:92) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.AsyncResponseHandler.handleResponse(AsyncResponseHandler.java:96) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:138) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:89) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:100) ~[feign-core-11.7.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.sun.proxy.$Proxy141.getCatalog(Unknown Source) ~[na:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.OsbProxyImpl.delegateProvision(OsbProxyImpl.java:75) ~[cf-ops-automation-broker-cor
e-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.OsbProxySkippedDeprovisionProxy.delegateProvision(OsbProxySkippedDeprovisionProxy.j
ava:36) ~[cf-ops-automation-broker-core-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.PipelineCompletionTracker.buildResponse(PipelineCompletionTracker.java:145) [cf-ops
-automation-broker-core-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.PipelineCompletionTracker.getDeploymentExecStatus(PipelineCompletionTracker.java:13
1) [cf-ops-automation-broker-core-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.BoshProcessor.preGetLastOperation(BoshProcessor.java:109) [cf-ops-automation-broker
-core-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.processors.ProcessorChain.getLastOperation(ProcessorChain.java:77) [cf-ops-automation-broker
-framework-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.ondemandbroker.ProcessorChainServiceInstanceService.getLastOperation(ProcessorChainServiceInstanceService.java:144) [cf-ops-automation-broker
-core-1.10.0.jar:1.10.0]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.cloud.servicebroker.service.ServiceInstanceEventService.getLastOperation(ServiceInstanceEventService.java:75) [spring-cloud-open-service
-broker-core-3.4.0.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.cloud.servicebroker.controller.ServiceInstanceController.lambda$getServiceInstanceLastOperation$18(ServiceInstanceController.java:238) [
spring-cloud-open-service-broker-core-3.4.0.jar:na]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:152) ~[reactor-core-3.4.13.jar:3.4.13]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53) ~[reactor-core-3.4.13.jar:3.4.13]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.Mono.subscribe(Mono.java:4385) ~[reactor-core-3.4.13.jar:3.4.13]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler$DeferredResultSubscriber.connect(ReactiveTypeHandler.java:451) ~[spring-webmvc-5.3
.14.jar:5.3.14]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler.handleValue(ReactiveTypeHandler.java:166) ~[spring-webmvc-5.3.14.jar:5.3.14]
2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitterReturnValueHandler.handleReturnValue(ResponseBodyEmitterReturnValueHandler.java:154
) ~[spring-webmvc-5.3.14.jar:5.3.14]
2024-02-14T11:39:53.60+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:53.602 INFO 7 --- [nio-8080-exec-1] o.s.c.s.c.ServiceInstanceController : Getting service instance last operation succeeded
2024-02-14T11:39:53.60+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:53.603 DEBUG 7 --- [nio-8080-exec-1] o.s.c.s.c.ServiceInstanceController : serviceInstanceId=e9d2bb15-6c6c-46d5-b393-081c43d494b2, response=GetLastServiceOperationResponse{state=failed, description='null', deleteOperation=false}
```
Expected behavior
As a coab ops, In order to diagnose failed service instance I need some error failure without leaking security sensitive details such as the inner broker endpoint
Observed behavior
No details is provided, the details are available within the broker logs.
observed logs
``` 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:52.375 WARN 7 --- [nio-8080-exec-1] .o.o.c.b.o.o.p.PipelineCompletionTracker : Caught during provision delegation. Hint: if meeting 404 broke r endpoint, check configuration mismatch between broker url endpoint property, and deployment bosh template 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT feign.FeignException$Unauthorized: [401 Unauthorized] during [GET] to [https://d-mysql-t_e9d2bb15-6c6c-46d5-b393-081c43d494b2.osb-data-services.mydomain.org/v2/catalog] [CatalogServiceClient#getCatalog(String)]: [HTTP Basic: Access denied. 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT ] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.clientErrorStatus(FeignException.java:215) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.errorStatus(FeignException.java:194) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.FeignException.errorStatus(FeignException.java:185) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.codec.ErrorDecoder$Default.decode(ErrorDecoder.java:92) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.AsyncResponseHandler.handleResponse(AsyncResponseHandler.java:96) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:138) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:89) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:100) ~[feign-core-11.7.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.sun.proxy.$Proxy141.getCatalog(Unknown Source) ~[na:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.OsbProxyImpl.delegateProvision(OsbProxyImpl.java:75) ~[cf-ops-automation-broker-cor e-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.OsbProxySkippedDeprovisionProxy.delegateProvision(OsbProxySkippedDeprovisionProxy.j ava:36) ~[cf-ops-automation-broker-core-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.PipelineCompletionTracker.buildResponse(PipelineCompletionTracker.java:145) [cf-ops -automation-broker-core-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.PipelineCompletionTracker.getDeploymentExecStatus(PipelineCompletionTracker.java:13 1) [cf-ops-automation-broker-core-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.pipeline.BoshProcessor.preGetLastOperation(BoshProcessor.java:109) [cf-ops-automation-broker -core-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.cloudfoundry.broker.opsautomation.ondemandbroker.processors.ProcessorChain.getLastOperation(ProcessorChain.java:77) [cf-ops-automation-broker -framework-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at com.orange.oss.ondemandbroker.ProcessorChainServiceInstanceService.getLastOperation(ProcessorChainServiceInstanceService.java:144) [cf-ops-automation-broker -core-1.10.0.jar:1.10.0] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.cloud.servicebroker.service.ServiceInstanceEventService.getLastOperation(ServiceInstanceEventService.java:75) [spring-cloud-open-service -broker-core-3.4.0.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.cloud.servicebroker.controller.ServiceInstanceController.lambda$getServiceInstanceLastOperation$18(ServiceInstanceController.java:238) [ spring-cloud-open-service-broker-core-3.4.0.jar:na] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:152) ~[reactor-core-3.4.13.jar:3.4.13] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53) ~[reactor-core-3.4.13.jar:3.4.13] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at reactor.core.publisher.Mono.subscribe(Mono.java:4385) ~[reactor-core-3.4.13.jar:3.4.13] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler$DeferredResultSubscriber.connect(ReactiveTypeHandler.java:451) ~[spring-webmvc-5.3 .14.jar:5.3.14] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler.handleValue(ReactiveTypeHandler.java:166) ~[spring-webmvc-5.3.14.jar:5.3.14] 2024-02-14T11:39:52.37+0000 [APP/PROC/WEB/0] OUT at org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitterReturnValueHandler.handleReturnValue(ResponseBodyEmitterReturnValueHandler.java:154 ) ~[spring-webmvc-5.3.14.jar:5.3.14] 2024-02-14T11:39:53.60+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:53.602 INFO 7 --- [nio-8080-exec-1] o.s.c.s.c.ServiceInstanceController : Getting service instance last operation succeeded 2024-02-14T11:39:53.60+0000 [APP/PROC/WEB/0] OUT 2024-02-14 11:39:53.603 DEBUG 7 --- [nio-8080-exec-1] o.s.c.s.c.ServiceInstanceController : serviceInstanceId=e9d2bb15-6c6c-46d5-b393-081c43d494b2, response=GetLastServiceOperationResponse{state=failed, description='null', deleteOperation=false} ```