nat: Count the number of dropped SCCP and MGCP calls as well.
Count the number of dropped calls and lost SCCP connections due the loss of a connection to the BSC...
This commit is contained in:
parent
b2c38ebb1f
commit
8330c1c386
|
@ -150,6 +150,8 @@ enum bsc_cfg_ctr {
|
|||
BCFG_CTR_SCCP_CONN,
|
||||
BCFG_CTR_SCCP_CALLS,
|
||||
BCFG_CTR_NET_RECONN,
|
||||
BCFG_CTR_DROPPED_SCCP,
|
||||
BCFG_CTR_DROPPED_CALLS,
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -546,13 +546,21 @@ int bsc_mgcp_nat_init(struct bsc_nat *nat)
|
|||
|
||||
void bsc_mgcp_clear_endpoints_for(struct bsc_connection *bsc)
|
||||
{
|
||||
struct rate_ctr *ctr = NULL;
|
||||
int i;
|
||||
|
||||
if (bsc->cfg)
|
||||
ctr = &bsc->cfg->stats.ctrg->ctr[BCFG_CTR_DROPPED_CALLS];
|
||||
|
||||
for (i = 1; i < bsc->nat->mgcp_cfg->number_endpoints; ++i) {
|
||||
struct bsc_endpoint *bsc_endp = &bsc->nat->bsc_endpoints[i];
|
||||
|
||||
if (bsc_endp->bsc != bsc)
|
||||
continue;
|
||||
|
||||
if (ctr)
|
||||
rate_ctr_inc(ctr);
|
||||
|
||||
bsc_mgcp_free_endpoint(bsc->nat, i);
|
||||
mgcp_free_endp(&bsc->nat->mgcp_cfg->endpoints[i]);
|
||||
}
|
||||
|
|
|
@ -588,17 +588,23 @@ static int ipaccess_msc_write_cb(struct bsc_fd *bfd, struct msgb *msg)
|
|||
void bsc_close_connection(struct bsc_connection *connection)
|
||||
{
|
||||
struct sccp_connections *sccp_patch, *tmp;
|
||||
struct rate_ctr *ctr = NULL;
|
||||
|
||||
/* stop the timeout timer */
|
||||
bsc_del_timer(&connection->id_timeout);
|
||||
bsc_del_timer(&connection->ping_timeout);
|
||||
bsc_del_timer(&connection->pong_timeout);
|
||||
|
||||
if (connection->cfg)
|
||||
ctr = &connection->cfg->stats.ctrg->ctr[BCFG_CTR_DROPPED_SCCP];
|
||||
|
||||
/* remove all SCCP connections */
|
||||
llist_for_each_entry_safe(sccp_patch, tmp, &nat->sccp_connections, list_entry) {
|
||||
if (sccp_patch->bsc != connection)
|
||||
continue;
|
||||
|
||||
if (ctr)
|
||||
rate_ctr_inc(ctr);
|
||||
if (sccp_patch->has_remote_ref)
|
||||
nat_send_rlsd(sccp_patch);
|
||||
sccp_connection_destroy(sccp_patch);
|
||||
|
|
|
@ -43,6 +43,8 @@ static const struct rate_ctr_desc bsc_cfg_ctr_description[] = {
|
|||
[BCFG_CTR_SCCP_CONN] = { "sccp.conn", "SCCP Connections" },
|
||||
[BCFG_CTR_SCCP_CALLS] = { "sccp.calls", "SCCP Assignment Commands"},
|
||||
[BCFG_CTR_NET_RECONN] = { "net.reconnects", "Network reconnects"},
|
||||
[BCFG_CTR_DROPPED_SCCP] = { "dropped.sccp", "Dropped SCCP connections."},
|
||||
[BCFG_CTR_DROPPED_CALLS] = { "dropped.calls", "Dropped active calls."},
|
||||
};
|
||||
|
||||
static const struct rate_ctr_group_desc bsc_cfg_ctrg_desc = {
|
||||
|
|
Loading…
Reference in New Issue