From c85d40b0cc8f40e5d0e17019878df82170f7bb35 Mon Sep 17 00:00:00 2001 From: sebdet Date: Tue, 10 Sep 2019 15:57:10 +0200 Subject: Repair healthcheck HealthCheck was always returning 200 even if the db was not up and running Issue-ID: CLAMP-494 Change-Id: I85aa427a212c6cde568d3863d1ab1a1a11c71f16 Signed-off-by: sebdet --- .../clamp/clds/service/CldsHealthcheckService.java | 15 ++------ .../java/org/onap/clamp/loop/LoopController.java | 42 +++++++++------------- src/main/resources/META-INF/resources/swagger.html | 2 +- .../resources/clds/camel/rest/clamp-api-v2.xml | 2 +- .../resources/clds/camel/rest/clds-services.xml | 26 +++++++++----- 5 files changed, 40 insertions(+), 47 deletions(-) (limited to 'src/main') diff --git a/src/main/java/org/onap/clamp/clds/service/CldsHealthcheckService.java b/src/main/java/org/onap/clamp/clds/service/CldsHealthcheckService.java index f1679168..39c12c8f 100644 --- a/src/main/java/org/onap/clamp/clds/service/CldsHealthcheckService.java +++ b/src/main/java/org/onap/clamp/clds/service/CldsHealthcheckService.java @@ -34,7 +34,6 @@ import org.onap.clamp.loop.LoopController; import org.slf4j.event.Level; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; /** @@ -54,36 +53,28 @@ public class CldsHealthcheckService { * * @return CldsHealthCheck class containing healthcheck info */ - public ResponseEntity gethealthcheck() { + public CldsHealthCheck gethealthcheck() { CldsHealthCheck cldsHealthCheck = new CldsHealthCheck(); Date startTime = new Date(); LoggingUtils util = new LoggingUtils(logger); LoggingUtils.setRequestContext("CldsService: GET healthcheck", "Clamp-Health-Check"); LoggingUtils.setTimeContext(startTime, new Date()); - boolean healthcheckFailed = false; try { loopController.getLoopNames(); cldsHealthCheck.setHealthCheckComponent("CLDS-APP"); cldsHealthCheck.setHealthCheckStatus("UP"); cldsHealthCheck.setDescription("OK"); LoggingUtils.setResponseContext("0", "Get healthcheck success", this.getClass().getName()); + util.exiting("200", "Healthcheck success", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED); } catch (Exception e) { - healthcheckFailed = true; logger.error("CLAMP application Heath check failed", e); LoggingUtils.setResponseContext("999", "Get healthcheck failed", this.getClass().getName()); cldsHealthCheck.setHealthCheckComponent("CLDS-APP"); cldsHealthCheck.setHealthCheckStatus("DOWN"); cldsHealthCheck.setDescription("NOT-OK"); - } - // audit log - LoggingUtils.setTimeContext(startTime, new Date()); - if (healthcheckFailed) { util.exiting(HttpStatus.INTERNAL_SERVER_ERROR.toString(), "Healthcheck failed", Level.INFO, ONAPLogConstants.ResponseStatus.ERROR); - return new ResponseEntity<>(cldsHealthCheck, HttpStatus.INTERNAL_SERVER_ERROR); - } else { - util.exiting("200", "Healthcheck failed", Level.INFO, ONAPLogConstants.ResponseStatus.COMPLETED); - return new ResponseEntity<>(cldsHealthCheck, HttpStatus.OK); } + return cldsHealthCheck; } } \ No newline at end of file diff --git a/src/main/java/org/onap/clamp/loop/LoopController.java b/src/main/java/org/onap/clamp/loop/LoopController.java index 7d41e489..72726fa3 100644 --- a/src/main/java/org/onap/clamp/loop/LoopController.java +++ b/src/main/java/org/onap/clamp/loop/LoopController.java @@ -61,40 +61,35 @@ public class LoopController { /** * Update the Operational Policy properties. * - * @param loopName - * The loop name - * @param operationalPoliciesJson - * The new Operational Policy properties + * @param loopName The loop name + * @param operationalPoliciesJson The new Operational Policy properties * @return The updated loop */ public Loop updateOperationalPolicies(String loopName, JsonArray operationalPoliciesJson) { List operationalPolicies = JsonUtils.GSON.fromJson(operationalPoliciesJson, - OPERATIONAL_POLICY_TYPE); + OPERATIONAL_POLICY_TYPE); return loopService.updateAndSaveOperationalPolicies(loopName, operationalPolicies); } /** - * Update the whole array of MicroService policies properties + * Update the whole array of MicroService policies properties. * - * @param loopName - * The loop name - * @param microServicePoliciesJson - * The array of all MicroService policies properties + * @param loopName The loop name + * @param microServicePoliciesJson The array of all MicroService policies + * properties * @return The updated loop */ public Loop updateMicroservicePolicies(String loopName, JsonArray microServicePoliciesJson) { List microservicePolicies = JsonUtils.GSON.fromJson(microServicePoliciesJson, - MICROSERVICE_POLICY_TYPE); + MICROSERVICE_POLICY_TYPE); return loopService.updateAndSaveMicroservicePolicies(loopName, microservicePolicies); } /** - * Update the global properties + * Update the global properties. * - * @param loopName - * The loop name - * @param globalProperties - * The updated global properties + * @param loopName The loop name + * @param globalProperties The updated global properties * @return The updated loop */ public Loop updateGlobalPropertiesJson(String loopName, JsonObject globalProperties) { @@ -102,12 +97,10 @@ public class LoopController { } /** - * Update one MicroService policy properties + * Update one MicroService policy properties. * - * @param loopName - * The loop name - * @param newMicroservicePolicy - * The new MicroService policy properties + * @param loopName The loop name + * @param newMicroservicePolicy The new MicroService policy properties * @return The updated MicroService policy */ public MicroServicePolicy updateMicroservicePolicy(String loopName, MicroServicePolicy newMicroservicePolicy) { @@ -115,13 +108,12 @@ public class LoopController { } /** - * Get the SVG representation of the loop + * Get the SVG representation of the loop. * - * @param loopName - * The loop name + * @param loopName The loop name * @return The SVG representation */ - public String getSVGRepresentation(String loopName) { + public String getSvgRepresentation(String loopName) { Loop loop = loopService.getLoop(loopName); return loop != null ? loop.getSvgRepresentation() : null; } diff --git a/src/main/resources/META-INF/resources/swagger.html b/src/main/resources/META-INF/resources/swagger.html index d2ec9660..d3b38b69 100644 --- a/src/main/resources/META-INF/resources/swagger.html +++ b/src/main/resources/META-INF/resources/swagger.html @@ -588,7 +588,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b

1.2. URI scheme

-

Host : localhost:40147
+

Host : localhost:36829
BasePath : /restservices/clds/
Schemes : HTTP

diff --git a/src/main/resources/clds/camel/rest/clamp-api-v2.xml b/src/main/resources/clds/camel/rest/clamp-api-v2.xml index 6ee44cad..cf99625e 100644 --- a/src/main/resources/clds/camel/rest/clamp-api-v2.xml +++ b/src/main/resources/clds/camel/rest/clamp-api-v2.xml @@ -68,7 +68,7 @@ + uri="bean:org.onap.clamp.loop.LoopController?method=getSvgRepresentation(${header.loopName})" /> diff --git a/src/main/resources/clds/camel/rest/clds-services.xml b/src/main/resources/clds/camel/rest/clds-services.xml index b3061dc4..dd3a4bfd 100644 --- a/src/main/resources/clds/camel/rest/clds-services.xml +++ b/src/main/resources/clds/camel/rest/clds-services.xml @@ -1,19 +1,29 @@ - - + - - + + + + + + + ${body} == 'NOT-OK' + + 404 + + + + - + -- cgit 1.2.3-korg