mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-06-13 02:37:22 +00:00
add cumulative count of sessions from switch startup. Resolves http://jira.freeswitch.org/browse/FSCORE-18. Updated patch to change data type of session_id to avoid rollover (wouldn't that be nice) and added - 1 to accurately reflect count. Thanks bkw for the patch.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4999 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
ca464fd296
commit
d6fdf60fd6
@ -83,7 +83,7 @@ typedef enum {
|
|||||||
|
|
||||||
|
|
||||||
struct switch_core_session {
|
struct switch_core_session {
|
||||||
uint32_t id;
|
switch_size_t id;
|
||||||
char name[80];
|
char name[80];
|
||||||
switch_session_flag_t flags;
|
switch_session_flag_t flags;
|
||||||
int thread_running;
|
int thread_running;
|
||||||
|
@ -441,6 +441,12 @@ SWITCH_DECLARE(void) switch_core_session_destroy(switch_core_session_t **session
|
|||||||
*/
|
*/
|
||||||
SWITCH_DECLARE(uint32_t) switch_core_session_count(void);
|
SWITCH_DECLARE(uint32_t) switch_core_session_count(void);
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\brief Provide the current session_id
|
||||||
|
\return the total number of allocated sessions since core startup
|
||||||
|
*/
|
||||||
|
SWITCH_DECLARE(switch_size_t) switch_core_session_id(void);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\brief Allocate and return a new session from the core based on a given endpoint module name
|
\brief Allocate and return a new session from the core based on a given endpoint module name
|
||||||
\param endpoint_name the name of the endpoint module
|
\param endpoint_name the name of the endpoint module
|
||||||
|
@ -84,6 +84,7 @@ static switch_status_t status_function(char *cmd, switch_core_session_t *session
|
|||||||
duration.sec, duration.sec == 1 ? "" : "s", duration.ms, duration.ms == 1 ? "" : "s", duration.mms,
|
duration.sec, duration.sec == 1 ? "" : "s", duration.ms, duration.ms == 1 ? "" : "s", duration.mms,
|
||||||
duration.mms == 1 ? "" : "s");
|
duration.mms == 1 ? "" : "s");
|
||||||
|
|
||||||
|
stream->write_function(stream, "%"SWITCH_SIZE_T_FMT" sessions since startup\n", switch_core_session_id() - 1 );
|
||||||
stream->write_function(stream, "%d sessions\n", switch_core_session_count());
|
stream->write_function(stream, "%d sessions\n", switch_core_session_count());
|
||||||
|
|
||||||
if (html) {
|
if (html) {
|
||||||
|
@ -40,7 +40,7 @@ static struct {
|
|||||||
switch_mutex_t *session_table_mutex;
|
switch_mutex_t *session_table_mutex;
|
||||||
uint32_t session_count;
|
uint32_t session_count;
|
||||||
uint32_t session_limit;
|
uint32_t session_limit;
|
||||||
uint32_t session_id;
|
switch_size_t session_id;
|
||||||
} runtime;
|
} runtime;
|
||||||
|
|
||||||
|
|
||||||
@ -820,6 +820,12 @@ SWITCH_DECLARE(uint32_t) switch_core_session_count(void)
|
|||||||
return runtime.session_count;
|
return runtime.session_count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SWITCH_DECLARE(switch_size_t) switch_core_session_id(void)
|
||||||
|
{
|
||||||
|
return runtime.session_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
SWITCH_DECLARE(switch_core_session_t *) switch_core_session_request_by_name(char *endpoint_name, switch_memory_pool_t **pool)
|
SWITCH_DECLARE(switch_core_session_t *) switch_core_session_request_by_name(char *endpoint_name, switch_memory_pool_t **pool)
|
||||||
{
|
{
|
||||||
const switch_endpoint_interface_t *endpoint_interface;
|
const switch_endpoint_interface_t *endpoint_interface;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user