Merge pull request #14553 from debdeep-arm/reset-ws-stats-master

Added API to reset MAC statistics and Wi-SUN statistics
pull/14569/head
Martin Kojtal 2021-04-28 12:35:07 +01:00 committed by GitHub
commit 6f43f03657
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 40 additions and 0 deletions

View File

@ -508,6 +508,16 @@ public:
* */
mesh_error_t enable_statistics(void);
/**
* \brief Reset Wi-SUN statistics
*
* Resets MAC statistics and Wi-SUN statistics.
*
* \return MESH_ERROR_NONE on success.
* \return MESH_ERROR_UNKNOWN on error
* */
mesh_error_t reset_statistics(void);
/**
* \brief Reads Wi-SUN network statistics
*

View File

@ -565,6 +565,16 @@ mesh_error_t WisunInterface::enable_statistics(void)
return ret_val;
}
mesh_error_t WisunInterface::reset_statistics(void)
{
mesh_error_t ret_val = MESH_ERROR_NONE;
int status = wisun_tasklet_statistics_reset();
if (status < 0) {
ret_val = MESH_ERROR_UNKNOWN;
}
return ret_val;
}
mesh_error_t WisunInterface::read_nw_statistics(mesh_nw_statistics_t *statistics)
{
mesh_error_t ret_val = MESH_ERROR_NONE;

View File

@ -126,6 +126,14 @@ int wisun_tasklet_remove_trusted_certificates(void);
*/
int wisun_tasklet_statistics_start(void);
/*
* \brief Reset Wi-SUN statistics
*
* \return 0 Statistics start successful
* \return < 0 in case of errors
*/
int wisun_tasklet_statistics_reset(void);
/*
* \brief Reads Wi-SUN network statistics
*

View File

@ -625,6 +625,18 @@ int wisun_tasklet_statistics_start(void)
return 0;
}
int wisun_tasklet_statistics_reset(void)
{
if (!statistics) {
return -1;
}
memset(&statistics->mac_statistics, 0, sizeof(mac_statistics_t));
memset(&statistics->ws_statistics, 0, sizeof(ws_statistics_t));
return 0;
}
static void wisun_tasklet_statistics_do_start(void)
{
if (!wisun_tasklet_data_ptr || wisun_tasklet_data_ptr->network_interface_id < 0 || !mac_api) {