Change in osmo-bsc[master]: implement incoming_intra_bsc_ho:* rate counters

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

neels gerrit-no-reply at lists.osmocom.org
Tue Nov 2 16:01:56 UTC 2021


neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/26072 )


Change subject: implement incoming_intra_bsc_ho:* rate counters
......................................................................

implement incoming_intra_bsc_ho:* rate counters

We have lots of counters for intra-BSC handover *away from* a given BTS,
but still missing are counters indicating how many handovers *targeted*
a given BTS. Also count incoming HO.

Related: SYS#4878
Related: Iba229313d73fa20266f6d4eac5820579fb14c604 (osmo-ttcn3-hacks)
Change-Id: Id9f2c6e2865ebe680879018fff08d283ce24c983
---
M include/osmocom/bsc/bts.h
M src/osmo-bsc/bts.c
M src/osmo-bsc/handover_fsm.c
3 files changed, 34 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/72/26072/1

diff --git a/include/osmocom/bsc/bts.h b/include/osmocom/bsc/bts.h
index 68e7cfe..7e73acd 100644
--- a/include/osmocom/bsc/bts.h
+++ b/include/osmocom/bsc/bts.h
@@ -131,6 +131,13 @@
 	BTS_CTR_INTRA_BSC_HO_TIMEOUT,
 	BTS_CTR_INTRA_BSC_HO_FAILED,
 	BTS_CTR_INTRA_BSC_HO_ERROR,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_ATTEMPTED,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_COMPLETED,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_STOPPED,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_NO_CHANNEL,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_TIMEOUT,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_FAILED,
+	BTS_CTR_INCOMING_INTRA_BSC_HO_ERROR,
 	BTS_CTR_INTER_BSC_HO_OUT_ATTEMPTED,
 	BTS_CTR_INTER_BSC_HO_OUT_COMPLETED,
 	BTS_CTR_INTER_BSC_HO_OUT_STOPPED,
diff --git a/src/osmo-bsc/bts.c b/src/osmo-bsc/bts.c
index ee2e791..83adcc4 100644
--- a/src/osmo-bsc/bts.c
+++ b/src/osmo-bsc/bts.c
@@ -1166,6 +1166,28 @@
 		{ "intra_bsc_ho:error",
 		  "Intra-BSC inter-cell HO failed for other reason" },
 
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_ATTEMPTED] = \
+		{ "incoming_intra_bsc_ho:attempted",
+		  "Incoming intra-BSC inter-cell handover attempts" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_COMPLETED] = \
+		{ "incoming_intra_bsc_ho:completed",
+		  "Incoming intra-BSC inter-cell handover completed" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_STOPPED] = \
+		{ "incoming_intra_bsc_ho:stopped",
+		  "Connection ended during HO" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_NO_CHANNEL] = \
+		{ "incoming_intra_bsc_ho:no_channel",
+		  "Failure to allocate lchan for HO" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_TIMEOUT] = \
+		{ "incoming_intra_bsc_ho:timeout",
+		  "Handover timed out" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_FAILED] = \
+		{ "incoming_intra_bsc_ho:failed",
+		  "Received Handover Fail messages" },
+	[BTS_CTR_INCOMING_INTRA_BSC_HO_ERROR] = \
+		{ "incoming_intra_bsc_ho:error",
+		  "Incoming intra-BSC inter-cell HO failed for other reason" },
+
 	[BTS_CTR_INTER_BSC_HO_OUT_ATTEMPTED] = \
 		{ "interbsc_ho_out:attempted",
 		  "Attempts to handover to remote BSS" },
diff --git a/src/osmo-bsc/handover_fsm.c b/src/osmo-bsc/handover_fsm.c
index e61262f..8556ff9 100644
--- a/src/osmo-bsc/handover_fsm.c
+++ b/src/osmo-bsc/handover_fsm.c
@@ -387,6 +387,7 @@
 	} else {
 		ho_count(bts, CTR_INTRA_BSC_HO_ATTEMPTED);
 		ho_fsm_update_id(fi, "intraBSC");
+		ho_count_bts(ho->new_bts, BTS_CTR_INCOMING_INTRA_BSC_HO_ATTEMPTED);
 	}
 
 	if (!ho->new_lchan) {
@@ -829,6 +830,7 @@
 FUNC_RESULT_COUNTER(BTS, HANDOVER)
 FUNC_RESULT_COUNTER(BTS, INTRA_CELL_HO)
 FUNC_RESULT_COUNTER(BTS, INTRA_BSC_HO)
+FUNC_RESULT_COUNTER(BTS, INCOMING_INTRA_BSC_HO)
 FUNC_RESULT_COUNTER(BTS, INTER_BSC_HO_IN)
 
 /* INTRA_BSC_HO_OUT does not have a NO_CHANNEL result, so can't do this with FUNC_RESULT_COUNTER() macro. */
@@ -1020,6 +1022,9 @@
 	ho_count_bsc(result_counter_bsc(ho->scope, result));
 	ho_count_bts(bts, result_counter_BTS_HANDOVER(result));
 	ho_count_bts(bts, result_counter_bts(ho->scope, result));
+	/* For inter-cell HO, also increment the "INCOMING" counters on the target BTS. */
+	if (ho->scope & HO_INTRA_BSC)
+		ho_count_bts(ho->new_bts, result_counter_BTS_INCOMING_INTRA_BSC_HO(result));
 	if (ho->scope & HO_INTER_BSC_IN && conn->fast_return.last_eutran_plmn_valid) {
 		/* From outside local BSC and with Last EUTRAN PLMN Id => SRVCC */
 		ho_count_bsc(result_counter_BSC_SRVCC(result));

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/26072
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Id9f2c6e2865ebe680879018fff08d283ce24c983
Gerrit-Change-Number: 26072
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20211102/3dea77f2/attachment.htm>


More information about the gerrit-log mailing list