Reputation: 23
I am Spring Boot Actuator /health endpoints to monitor an application but the results is always like that:
"{ "summary" : { "results" : [ ], "duration" : 0, "executionSummaryText" : "Up and running", "failResults" : [ ] }, "applicationID" : "858", "subApplicationID" : "85822", "applicationName" : "app", "subApplicationName" : "app_reg", "applicationVersion" : null, "applicationBuildDate" : "2019-02-28 16:14:09", "applicationBuildLevel" : "5.2.0-SNAPSHOT", "timestamp" : "2019-02-28 17:16:15", "Host" : "host", "workloadStatus" : "Up and running", "detectionTime" : 3, "isaliveStatus" : "ENABLED" }"
but I want it to look like that:
"{
"summary":
{
"results":[],
"duration":0,
"executionSummaryText":"Up and running",
"failResults":[]
},
"applicationID":"858",
"subApplicationID":"85822",
"applicationName":"app",
"subApplicationName":"app_reg",
"applicationVersion":null,
"applicationBuildDate":"2019-02-28 13:19:35",
"applicationBuildLevel":"5.2.0-SNAPSHOT",
"timestamp":"2019-02-28 14:21:33",
"Host":"host",
"workloadStatus":"Up and running",
"detectionTime":4,
"isaliveStatus":"ENABLED"
}"
I tried all of the following but it did not work:
http.mappers.jsonPrettyPrint=true
spring.jackson.serialization.indent_output=true
objectMapper.enable(SerializationFeature.INDENT_OUTPUT);
but none of them worked. Is there a configuration to make it work for JSON output?
Upvotes: 2
Views: 585
Reputation: 44970
You need to enable INDENT_OUTPUT
serialization feature using properties available in the Appendix A. Assuming you have not created the ObjectMapper
bean yourself as per this guide the Spring Boot property is:
spring.jackson.serialization.indent_output=true
Do note this is a global change affect all endpoints which are returning JSON by serializing objects with Jackson.
Upvotes: 1