MXS-2423: Add missing parameters to maxscale endpoint

Also updated the REST API documentation to include the newer output
(automating this update would be valuable).
This commit is contained in:
Markus Mäkelä 2019-04-05 00:11:00 +03:00
parent 9722c0887a
commit b54e67223f
No known key found for this signature in database
GPG Key ID: 72D48FCE664F7B19
4 changed files with 48 additions and 5 deletions

View File

@ -52,12 +52,17 @@ file locations, configuration options and version information.
"admin_ssl_key": "",
"admin_ssl_cert": "",
"admin_ssl_ca_cert": "",
"query_classifier": ""
"query_classifier": "",
"query_classifier_cache_size": 416215859,
"retain_last_statements": 2,
"dump_last_statements": "never",
"load_persisted_configs": false
},
"version": "2.2.0",
"commit": "aa1a413cd961d467083d1974c2a027f612201845",
"started_at": "Wed, 06 Sep 2017 06:51:54 GMT",
"uptime": 1227
"version": "2.3.6",
"commit": "47158faf12c156775c39388652a77f8a8c542d28",
"started_at": "Thu, 04 Apr 2019 21:04:06 GMT",
"activated_at": "Thu, 04 Apr 2019 21:04:06 GMT",
"uptime": 337
},
"id": "maxscale",
"type": "maxscale"

View File

@ -620,6 +620,11 @@ char* session_set_variable_value(MXS_SESSION* session,
*/
void session_set_retain_last_statements(uint32_t n);
/**
* Get retain_last_statements
*/
uint32_t session_get_retain_last_statements();
/**
* @brief Retain provided statement, if configured to do so.
*
@ -669,6 +674,11 @@ void session_set_dump_statements(session_dump_statements_t value);
*/
session_dump_statements_t session_get_dump_statements();
/**
* String version of session_get_dump_statements
*/
const char* session_get_dump_statements_str();
/**
* @brief Route the query again after a delay
*

View File

@ -4548,6 +4548,10 @@ json_t* config_maxscale_to_json(const char* host)
CN_QUERY_CLASSIFIER_CACHE_SIZE,
json_integer(cnf->qc_cache_properties.max_size));
json_object_set_new(param, CN_RETAIN_LAST_STATEMENTS, json_integer(session_get_retain_last_statements()));
json_object_set_new(param, CN_DUMP_LAST_STATEMENTS, json_string(session_get_dump_statements_str()));
json_object_set_new(param, CN_LOAD_PERSISTED_CONFIGS, json_boolean(cnf->load_persisted_configs));
json_t* attr = json_object();
time_t started = maxscale_started();
time_t activated = started + MXS_CLOCK_TO_SEC(cnf->promoted_at);

View File

@ -1055,6 +1055,11 @@ void session_set_retain_last_statements(uint32_t n)
this_unit.retain_last_statements = n;
}
uint32_t session_get_retain_last_statements()
{
return this_unit.retain_last_statements;
}
void session_set_dump_statements(session_dump_statements_t value)
{
this_unit.dump_statements = value;
@ -1065,6 +1070,25 @@ session_dump_statements_t session_get_dump_statements()
return this_unit.dump_statements;
}
const char* session_get_dump_statements_str()
{
switch (this_unit.dump_statements)
{
case SESSION_DUMP_STATEMENTS_NEVER:
return "never";
case SESSION_DUMP_STATEMENTS_ON_CLOSE:
return "on_close";
case SESSION_DUMP_STATEMENTS_ON_ERROR:
return "on_error";
default:
mxb_assert(!true);
return "unknown";
}
}
void session_retain_statement(MXS_SESSION* pSession, GWBUF* pBuffer)
{
static_cast<Session*>(pSession)->retain_statement(pBuffer);