aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Chemeris <Alexander.Chemeris@gmail.com>2020-05-16 18:49:59 +0300
committerAlexander Chemeris <Alexander.Chemeris@gmail.com>2020-05-16 22:26:55 +0300
commitccbba5955814f04bb003844a1eea7a251c0e41f4 (patch)
tree01db951e152f0b4752706044ef8bc2dc2b6b0248
parent6b16ef8c290fe4d6e53862a4bdfda60a928f2afb (diff)
stats: Add a BTS/BSC counter PAGING_NON_ACTIVE.
Otherwise we're missing an important part of the callflow and the counters of responded/expired paging requests don't add up to attempted paging number. Change-Id: I1755be40d29980b75353cb4b8087d1ce0d92854a
-rw-r--r--include/osmocom/bsc/gsm_data.h4
-rw-r--r--src/osmo-bsc/gsm_08_08.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h
index aeeb58d71..264df8ee0 100644
--- a/include/osmocom/bsc/gsm_data.h
+++ b/include/osmocom/bsc/gsm_data.h
@@ -1412,6 +1412,7 @@ enum bts_counter_id {
BTS_CTR_PAGING_ALREADY,
BTS_CTR_PAGING_RESPONDED,
BTS_CTR_PAGING_EXPIRED,
+ BTS_CTR_PAGING_NON_ACTIVE,
BTS_CTR_CHAN_ACT_TOTAL,
BTS_CTR_CHAN_ACT_NACK,
BTS_CTR_RSL_UNKNOWN,
@@ -1458,6 +1459,7 @@ static const struct rate_ctr_desc bts_ctr_description[] = {
[BTS_CTR_PAGING_ALREADY] = {"paging:already", "Paging attempts ignored as subscriber was already being paged."},
[BTS_CTR_PAGING_RESPONDED] = {"paging:responded", "Paging attempts with successful paging response."},
[BTS_CTR_PAGING_EXPIRED] = {"paging:expired", "Paging Request expired because of timeout T3113."},
+ [BTS_CTR_PAGING_NON_ACTIVE] = {"paging:non_active", "Non active subscriber responded to paging."},
[BTS_CTR_CHAN_ACT_TOTAL] = {"chan_act:total", "Total number of Channel Activations."},
[BTS_CTR_CHAN_ACT_NACK] = {"chan_act:nack", "Number of Channel Activations that the BTS NACKed"},
[BTS_CTR_RSL_UNKNOWN] = {"rsl:unknown", "Number of unknown/unsupported RSL messages received from BTS"},
@@ -1554,6 +1556,7 @@ enum {
BSC_CTR_PAGING_ATTEMPTED,
BSC_CTR_PAGING_DETACHED,
BSC_CTR_PAGING_RESPONDED,
+ BSC_CTR_PAGING_NON_ACTIVE,
BSC_CTR_UNKNOWN_UNIT_ID,
};
@@ -1598,6 +1601,7 @@ static const struct rate_ctr_desc bsc_ctr_description[] = {
[BSC_CTR_PAGING_ATTEMPTED] = {"paging:attempted", "Paging attempts for a subscriber."},
[BSC_CTR_PAGING_DETACHED] = {"paging:detached", "Paging request send failures because no responsible BTS was found."},
[BSC_CTR_PAGING_RESPONDED] = {"paging:responded", "Paging attempts with successful response."},
+ [BSC_CTR_PAGING_NON_ACTIVE] = {"paging:non_active", "Paging response for non active subscriber."},
[BSC_CTR_UNKNOWN_UNIT_ID] = {"abis:unknown_unit_id", "Connection attempts from unknown IPA CCM Unit ID."},
};
diff --git a/src/osmo-bsc/gsm_08_08.c b/src/osmo-bsc/gsm_08_08.c
index 4f9c69eb6..d48c9f72c 100644
--- a/src/osmo-bsc/gsm_08_08.c
+++ b/src/osmo-bsc/gsm_08_08.c
@@ -388,6 +388,8 @@ static int handle_page_resp(struct gsm_subscriber_connection *conn, struct msgb
if (!subscr) {
LOGP(DMSC, LOGL_ERROR, "Non active subscriber got paged.\n");
+ rate_ctr_inc(&conn->lchan->ts->trx->bts->bts_ctrs->ctr[BTS_CTR_PAGING_NON_ACTIVE]);
+ rate_ctr_inc(&conn->network->bsc_ctrs->ctr[BSC_CTR_PAGING_NON_ACTIVE]);
return -1;
}