Merge "ari: Implement 'debug all' and request/response logging"

This commit is contained in:
George Joseph
2017-01-26 17:06:40 -06:00
committed by Gerrit Code Review
28 changed files with 527 additions and 1157 deletions

View File

@@ -59,7 +59,8 @@ struct ast_ari_response;
typedef void (*stasis_rest_callback)(
struct ast_tcptls_session_instance *ser,
struct ast_variable *get_params, struct ast_variable *path_vars,
struct ast_variable *headers, struct ast_ari_response *response);
struct ast_variable *headers, struct ast_json *body,
struct ast_ari_response *response);
/*!
* \brief Handler for a single RESTful path segment.
@@ -136,7 +137,7 @@ int ast_ari_remove_handler(struct stasis_rest_handlers *handler);
void ast_ari_invoke(struct ast_tcptls_session_instance *ser,
const char *uri, enum ast_http_method method,
struct ast_variable *get_params, struct ast_variable *headers,
struct ast_ari_response *response);
struct ast_json *body, struct ast_ari_response *response);
/*!
* \internal
@@ -200,6 +201,15 @@ int ast_ari_websocket_session_write(struct ast_ari_websocket_session *session,
const char *ast_ari_websocket_session_id(
const struct ast_ari_websocket_session *session);
/*!
* \brief Get the remote address from an ARI WebSocket.
*
* \param session Session to write to.
* \return ast_sockaddr (does not have to be freed)
*/
struct ast_sockaddr *ast_ari_websocket_session_get_remote_addr(
struct ast_ari_websocket_session *session);
/*!
* \brief The stock message to return when out of memory.
*

View File

@@ -903,6 +903,56 @@ int stasis_app_control_dial(struct stasis_app_control *control,
* allocated during the time that res_stasis was loaded.
*/
void stasis_app_control_shutdown(void);
/*!
* \brief Enable/disable request/response and event logging on an application
*
* \param app The app to debug
* \param debug If non-zero, enable debugging. If zero, disable.
*/
void stasis_app_set_debug(struct stasis_app *app, int debug);
/*!
* \brief Enable/disable request/response and event logging on an application
*
* \param app_name The app name to debug
* \param debug If non-zero, enable debugging. If zero, disable.
*/
void stasis_app_set_debug_by_name(const char *app_name, int debug);
/*!
* \brief Get debug status of an application
*
* \param app The app to check
* \return The debug flag for the app || the global debug flag
*/
int stasis_app_get_debug(struct stasis_app *app);
/*!
* \brief Get debug status of an application
*
* \param app_name The app_name to check
* \return The debug flag for the app || the global debug flag
*/
int stasis_app_get_debug_by_name(const char *app_name);
/*!
* \brief Enable/disable request/response and event logging on all applications
*
* \param debug If non-zero, enable debugging. If zero, disable.
*/
void stasis_app_set_global_debug(int debug);
struct ast_cli_args;
/*!
* \brief Dump properties of a \c stasis_app to the CLI
*
* \param app The application
* \param a The CLI arguments
*/
void stasis_app_to_cli(const struct stasis_app *app, struct ast_cli_args *a);
/*! @} */
#endif /* _ASTERISK_STASIS_APP_H */