pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40554?usp=email )
Change subject: route: Introduce LOGPRT macro to improve logging ......................................................................
route: Introduce LOGPRT macro to improve logging
Change-Id: I00823f4b61d082d2de848c81e8592a4a1b2697e5 --- M src/ss7_route.c M src/ss7_route.h 2 files changed, 19 insertions(+), 19 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/54/40554/1
diff --git a/src/ss7_route.c b/src/ss7_route.c index e40f1bc..ec41a8a 100644 --- a/src/ss7_route.c +++ b/src/ss7_route.c @@ -109,12 +109,12 @@ struct osmo_ss7_route_table *rtbl = rt->rtable;
if (rt->cfg.linkset_name) { - LOGSS7(rtbl->inst, LOGL_ERROR, "Attempt setting linkset on route already configured!\n"); + LOGPRT(rt, DLSS7, LOGL_ERROR, "Attempt setting linkset on route already configured!\n"); return -EBUSY; }
if (ss7_route_inserted(rt)) { - LOGSS7(rtbl->inst, LOGL_ERROR, "Attempt setting linkset on route already in the routing table!\n"); + LOGPRT(rt, DLSS7, LOGL_ERROR, "Attempt setting linkset on route already in the routing table!\n"); return -EALREADY; }
@@ -128,15 +128,10 @@ rt->cfg.linkset_name = talloc_strdup(rt, linkset_name); if (lset) { rt->dest.linkset = lset; - LOGSS7(rtbl->inst, LOGL_INFO, "Creating route: pc=%u=%s mask=0x%x via linkset '%s'\n", - rt->cfg.pc, osmo_ss7_pointcode_print(rtbl->inst, rt->cfg.pc), - rt->cfg.mask, lset->cfg.name); } else { rt->dest.as = as; - LOGSS7(rtbl->inst, LOGL_INFO, "Creating route: pc=%u=%s mask=0x%x via AS '%s'\n", - rt->cfg.pc, osmo_ss7_pointcode_print(rtbl->inst, rt->cfg.pc), - rt->cfg.mask, as->cfg.name); } + LOGPRT(rt, DLSS7, LOGL_INFO, "Creating route: %s\n", osmo_ss7_route_name(rt, false)); return 0; }
@@ -154,12 +149,12 @@ struct osmo_ss7_route_table *rtbl = rt->rtable;
if (ss7_route_inserted(rt)) { - LOGSS7(rtbl->inst, LOGL_ERROR, "Attempt insert of route already in the routing table!\n"); + LOGPRT(rt, DLSS7, LOGL_ERROR, "Attempt insert of route already in the routing table!\n"); return -EALREADY; }
if (!rt->cfg.linkset_name) { - LOGSS7(rtbl->inst, LOGL_ERROR, "Attempt insert of route with unset linkset!\n"); + LOGPRT(rt, DLSS7, LOGL_ERROR, "Attempt insert of route with unset linkset!\n"); return -EINVAL; }
@@ -169,10 +164,8 @@ llist_for_each_entry(prev_rt, &clset->routes, list) { if (strcmp(prev_rt->cfg.linkset_name, rt->cfg.linkset_name) == 0 && prev_rt->cfg.dyn_allocated == rt->cfg.dyn_allocated) { - LOGSS7(rtbl->inst, LOGL_ERROR, - "Refusing to create route with existing linkset name: pc=%u=%s mask=0x%x via linkset/AS '%s'\n", - rt->cfg.pc, osmo_ss7_pointcode_print(rtbl->inst, rt->cfg.pc), - rt->cfg.mask, rt->cfg.linkset_name); + LOGPRT(rt, DLSS7, LOGL_ERROR, + "Refusing to create route with existing linkset/AS name '%s'\n", rt->cfg.linkset_name); return -EADDRINUSE; } } @@ -234,11 +227,8 @@ return;
if (ss7_route_inserted(rt)) { - struct osmo_ss7_instance *inst = rt->rtable->inst; - LOGSS7(inst, LOGL_INFO, - "Destroying route: pc=%u=%s mask=0x%x via linkset/ASP '%s'\n", - rt->cfg.pc, osmo_ss7_pointcode_print(inst, rt->cfg.pc), - rt->cfg.mask, rt->cfg.linkset_name); + LOGPRT(rt, DLSS7, LOGL_INFO, + "Destroying route: %s\n", osmo_ss7_route_name(rt, false)); ss7_combined_linkset_del_route(rt); } talloc_free(rt); diff --git a/src/ss7_route.h b/src/ss7_route.h index 4bb7a2b..c7ed609 100644 --- a/src/ss7_route.h +++ b/src/ss7_route.h @@ -60,3 +60,13 @@ int ss7_route_insert(struct osmo_ss7_route *rt);
bool ss7_route_is_available(const struct osmo_ss7_route *rt); +#define LOGPRT(rt, subsys, level, fmt, args ...) do { \ + char _pc_str[MAX_PC_STR_LEN]; \ + char _mask_str[MAX_PC_STR_LEN]; \ + _LOGSS7((rt)->rtable->inst, subsys, level, \ + "RT(dpc=%u=%s,mask=0x%x=%s,prio=%u) " fmt, \ + (rt)->cfg.pc, osmo_ss7_pointcode_print_buf(_pc_str, MAX_PC_STR_LEN, (rt)->rtable->inst, (rt)->cfg.pc), \ + (rt)->cfg.mask, osmo_ss7_pointcode_print_buf(_mask_str, MAX_PC_STR_LEN, (rt)->rtable->inst, (rt)->cfg.mask), \ + (rt)->cfg.priority, \ + ## args); \ + } while (0)