@cryptotaxi247 / netdata-1 / commits / ea66e7ced

fix api v1 mgmt/health (#15806)

Timotej S committed Aug 14, 2023 at 19:33 UTC ea66e7ced4a9a33745b6a29e6c7dece41090e784
1 file changed +20 -1
web/api/web_api_v1.c
+20 -1
@@ -1524,6 +1524,25 @@ int web_client_api_request_v1_dbengine_stats(RRDHOST *host __maybe_unused, struc
1524 }
1525 #endif
1526
1527 +#define HLT_MGM "manage/health"
1528 +int web_client_api_request_v1_mgmt(RRDHOST *host, struct web_client *w, char *url) {
1529 + const char *haystack = buffer_tostring(w->url_path_decoded);
1530 + char *needle;
1531 +
1532 + buffer_flush(w->response.data);
1533 +
1534 + if ((needle = strstr(haystack, HLT_MGM)) == NULL) {
1535 + buffer_strcat(w->response.data, "Invalid management request. Curently only 'health' is supported.");
1536 + return HTTP_RESP_NOT_FOUND;
1537 + }
1538 + needle += strlen(HLT_MGM);
1539 + if (*needle != '\0') {
1540 + buffer_strcat(w->response.data, "Invalid management request. Curently only 'health' is supported.");
1541 + return HTTP_RESP_NOT_FOUND;
1542 + }
1543 + return web_client_api_request_v1_mgmt_health(host, w, url);
1544 +}
1545 +
1546 static struct web_api_command api_commands_v1[] = {
1547 { "info", 0, WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC, web_client_api_request_v1_info, 0 },
1548 { "data", 0, WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC, web_client_api_request_v1_data, 0 },
@@ -1550,7 +1569,7 @@ static struct web_api_command api_commands_v1[] = {
1569 // { "ml_models", 0, WEB_CLIENT_ACL_DASHBOARD, web_client_api_request_v1_ml_models },
1570 #endif
1571
1553 - {"manage/health", 0, WEB_CLIENT_ACL_MGMT | WEB_CLIENT_ACL_ACLK, web_client_api_request_v1_mgmt_health, 0 },
1572 + {"manage", 0, WEB_CLIENT_ACL_MGMT | WEB_CLIENT_ACL_ACLK, web_client_api_request_v1_mgmt, 1 },
1573 { "aclk", 0, WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC, web_client_api_request_v1_aclk_state, 0 },
1574 { "metric_correlations", 0, WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC, web_client_api_request_v1_metric_correlations, 0 },
1575 { "weights", 0, WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC, web_client_api_request_v1_weights, 0 },