diff options
author | Alexander Chemeris <Alexander.Chemeris@gmail.com> | 2020-05-07 16:46:47 +0300 |
---|---|---|
committer | Alexander Chemeris <Alexander.Chemeris@gmail.com> | 2020-05-08 23:34:51 +0300 |
commit | 28cb83ef8f7e817866c69b42de265119694b3f8f (patch) | |
tree | 79c1c91625f84bd23325ea55c5481aa078cfc7de | |
parent | f1a1d7c34f9d203c5e3a514fa7a32b06586aa70a (diff) |
stats: Export connected OML/RSL links count per BTS.
Change-Id: I88c8025940a0eecb034b1c70f76ea17937fa0325
-rw-r--r-- | include/osmocom/bsc/gsm_data.h | 2 | ||||
-rw-r--r-- | src/osmo-bsc/bts_ipaccess_nanobts.c | 4 | ||||
-rw-r--r-- | src/osmo-bsc/gsm_data.c | 2 |
3 files changed, 8 insertions, 0 deletions
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index f84520973..5e4b532c5 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -1472,6 +1472,8 @@ enum { BTS_STAT_T3122, BTS_STAT_RACH_BUSY, BTS_STAT_RACH_ACCESS, + BTS_STAT_OML_CONNECTED, + BTS_STAT_RSL_CONNECTED, }; enum { diff --git a/src/osmo-bsc/bts_ipaccess_nanobts.c b/src/osmo-bsc/bts_ipaccess_nanobts.c index a5e697be1..f004c1598 100644 --- a/src/osmo-bsc/bts_ipaccess_nanobts.c +++ b/src/osmo-bsc/bts_ipaccess_nanobts.c @@ -397,6 +397,7 @@ void ipaccess_drop_rsl(struct gsm_bts_trx *trx, const char *reason) LOG_TRX(trx, DLINP, LOGL_NOTICE, "Dropping RSL link: %s\n", reason); e1inp_sign_link_destroy(trx->rsl_link); trx->rsl_link = NULL; + osmo_stat_item_dec(trx->bts->bts_statg->items[BTS_STAT_RSL_CONNECTED], 1); if (trx->bts->c0 == trx) paging_flush_bts(trx->bts, NULL); @@ -417,6 +418,7 @@ void ipaccess_drop_oml(struct gsm_bts *bts, const char *reason) e1inp_sign_link_destroy(bts->oml_link); bts->oml_link = NULL; bts->uptime = 0; + osmo_stat_item_dec(bts->bts_statg->items[BTS_STAT_OML_CONNECTED], 1); /* we have issues reconnecting RSL, drop everything. */ llist_for_each_entry(trx, &bts->trx_list, list) @@ -558,6 +560,7 @@ ipaccess_sign_link_up(void *unit_data, struct e1inp_line *line, sign_link->tei, sign_link->sapi); sign_link->trx->bts->ip_access.flags |= OML_UP; } + osmo_stat_item_inc(bts->bts_statg->items[BTS_STAT_OML_CONNECTED], 1); break; case E1INP_SIGN_RSL: { struct e1inp_ts *ts; @@ -585,6 +588,7 @@ ipaccess_sign_link_up(void *unit_data, struct e1inp_line *line, sign_link->trx->bts->ip_access.flags |= (RSL_UP << sign_link->trx->nr); } + osmo_stat_item_inc(bts->bts_statg->items[BTS_STAT_RSL_CONNECTED], 1); break; } default: diff --git a/src/osmo-bsc/gsm_data.c b/src/osmo-bsc/gsm_data.c index 23a4e61b3..8b50805e3 100644 --- a/src/osmo-bsc/gsm_data.c +++ b/src/osmo-bsc/gsm_data.c @@ -390,6 +390,8 @@ static const struct osmo_stat_item_desc bts_stat_desc[] = { { "T3122", "T3122 IMMEDIATE ASSIGNMENT REJECT wait indicator", "s", 16, GSM_T3122_DEFAULT }, { "rach_busy", "RACH slots with signal above threshold", "%", 16, 0 }, { "rach_access", "RACH slots with access bursts in them", "%", 16, 0 }, + { "oml_connected", "Number of OML links connected", "", 16, 0 }, + { "rsl_connected", "Number of RSL links connected", "", 16, 0 }, }; static const struct osmo_stat_item_group_desc bts_statg_desc = { |