Config Diagnostics Endpoint
The Config Diagnostics endpoint provides comprehensive configuration diagnostics for all nodes in the cluster. This endpoint analyzes module configurations across all nodes and identifies potential errors, warnings, performance issues, and security concerns.
This method will return configuration diagnostics entries organized by node, containing:
To invoke:
GET http://localhost:9000/diagnostics
The server will produce a response containing diagnostics organized by node:
{
"configDiagnosticsByNode": {
"node-01": {
"entries": [
{
"type": "ERROR",
"nodeId": "node-01",
"moduleId": "persistence",
"propertyName": "Database URL",
"propertyCategoryKey": "database",
"propertyKey": "database.url",
"currentValue": "jdbc:h2:mem:testdb",
"issue": "Database URL should not use in-memory database in production"
},
{
"type": "SECURITY",
"nodeId": "node-01",
"moduleId": "auth",
"issue": "Default administrative credentials are still enabled"
},
{
"type": "WARNING",
"nodeId": "node-01",
"moduleId": "fhir-storage",
"propertyName": "Maximum Pool Size",
"propertyCategoryKey": "performance",
"propertyKey": "datasource.maximum-pool-size",
"currentValue": "10",
"issue": "Connection pool size may be insufficient for high load"
},
{
"type": "PERFORMANCE",
"nodeId": "node-01",
"moduleId": "search",
"propertyName": "Search Cache Size",
"propertyCategoryKey": "caching",
"propertyKey": "search.cache.max-size",
"currentValue": "1000",
"issue": "Search cache size could be increased for better performance"
}
]
},
"node-02": {
"entries": []
}
}
}
The response contains configuration diagnostics organized by node ID:
configDiagnosticsByNode
– A map where keys are node IDs and values contain diagnostic entries for that nodetype
– The severity/category of the diagnostic entry. Can be:
ERROR
– Configuration errors that prevent proper operationWARNING
– Configuration issues that may affect functionalitySECURITY
– Security-related configuration concernsPERFORMANCE
– Performance optimization recommendationsnodeId
– The identifier of the node where this diagnostic was generatedmoduleId
– The module ID where the configuration issue was detectedpropertyName
– Human-readable name of the configuration property (if applicable)propertyCategoryKey
– Category key for grouping related properties (if applicable)propertyKey
– The exact configuration property key (if applicable)currentValue
– The current value of the configuration property (if applicable)issue
– Description of the configuration issue or recommendationentries
arrayThis endpoint requires both the ACCESS_ADMIN_JSON
and VIEW_MODULE_CONFIG
permissions, which provide access to potentially sensitive configuration information. The diagnostics may include:
This endpoint is primarily useful for:
Returned when the user lacks the required ACCESS_ADMIN_JSON
or VIEW_MODULE_CONFIG
permissions:
{
"error": "Access is denied"
}
Returned when there are issues accessing configuration data or generating diagnostics:
{
"error": "Failed to generate configuration diagnostics",
"details": "Unable to connect to configuration service"
}
You are about to leave the Smile Digital Health documentation and navigate to the Open Source HAPI-FHIR Documentation.