pespin has submitted this change. (
https://gerrit.osmocom.org/c/osmo-cbc/+/28821 )
Change subject: Move ASN1C enc/dec logging to its own category
......................................................................
Move ASN1C enc/dec logging to its own category
ASN1C encoding/decoding can get really verbose. Furthermore, it should
only be enabled under really specific conditions, so it makes sense to
have it under its own category.
Change-Id: Ia4cbae2395532d9b5b7b9177a7d0f31bf777d751
---
M doc/examples/osmo-cbc/osmo-cbc.cfg
M include/osmocom/cbc/debug.h
M include/osmocom/sbcap/sbcap_common.h
M include/osmocom/sbcap/sbcap_internal.h
M src/cbc_main.c
M src/sbcap/sbcap_common.c
M tests/sbcap/sbcap_test.c
7 files changed, 29 insertions(+), 12 deletions(-)
Approvals:
Jenkins Builder: Verified
neels: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
fixeria: Looks good to me, approved
diff --git a/doc/examples/osmo-cbc/osmo-cbc.cfg b/doc/examples/osmo-cbc/osmo-cbc.cfg
index 847b901..7f5ebdc 100644
--- a/doc/examples/osmo-cbc/osmo-cbc.cfg
+++ b/doc/examples/osmo-cbc/osmo-cbc.cfg
@@ -1,8 +1,9 @@
log stderr
logging level main notice
- logging level rest notice
logging level cbsp notice
logging level sbcap notice
+ logging level asn1c notice
+ logging level rest notice
cbc
unknown-peers reject
ecbe
diff --git a/include/osmocom/cbc/debug.h b/include/osmocom/cbc/debug.h
index 025419e..c0b3864 100644
--- a/include/osmocom/cbc/debug.h
+++ b/include/osmocom/cbc/debug.h
@@ -4,5 +4,6 @@
DMAIN,
DCBSP,
DSBcAP,
+ DASN1C,
DREST,
};
diff --git a/include/osmocom/sbcap/sbcap_common.h b/include/osmocom/sbcap/sbcap_common.h
index 40da3ba..b0fc173 100644
--- a/include/osmocom/sbcap/sbcap_common.h
+++ b/include/osmocom/sbcap/sbcap_common.h
@@ -118,8 +118,8 @@
#include <osmocom/core/logging.h>
-extern int _sbcap_DSBCAP;
-#define SBC_AP_DEBUG(x, args ...) DEBUGP(_sbcap_DSBCAP, x, ## args)
+extern int _sbcap_DASN1C;
+#define SBC_AP_DEBUG(x, args ...) DEBUGP(_sbcap_DASN1C, x, ## args)
extern int asn1_xer_print;
@@ -140,7 +140,7 @@
const char *sbcap_procedure_code_str(SBcAP_ProcedureCode_t pc);
const char *sbcap_cause_str(SBcAP_Cause_t cause);
-void sbcap_set_log_area(int log_area);
+void sbcap_set_log_area(int log_area_sbcap, int log_area_asn1c);
SBcAP_ProcedureCode_t sbcap_pdu_get_procedure_code(const SBcAP_SBC_AP_PDU_t *pdu);
SBcAP_Criticality_t sbcap_pdu_get_criticality(const SBcAP_SBC_AP_PDU_t *pdu);
diff --git a/include/osmocom/sbcap/sbcap_internal.h
b/include/osmocom/sbcap/sbcap_internal.h
index 81d058d..036c53b 100644
--- a/include/osmocom/sbcap/sbcap_internal.h
+++ b/include/osmocom/sbcap/sbcap_internal.h
@@ -2,7 +2,7 @@
#include <osmocom/core/logging.h>
-extern int _sbcap_DSBCAP;
-#define SBC_AP_ASN_DEBUG(x, args ...) DEBUGP(_sbcap_DSBCAP, x "\n", ## args)
+extern int _sbcap_DASN1C;
+#define SBC_AP_ASN_DEBUG(x, args ...) DEBUGP(_sbcap_DASN1C, x "\n", ## args)
#define ASN_DEBUG SBC_AP_ASN_DEBUG
diff --git a/src/cbc_main.c b/src/cbc_main.c
index 9373c41..5096dc8 100644
--- a/src/cbc_main.c
+++ b/src/cbc_main.c
@@ -44,6 +44,8 @@
#include <osmocom/vty/logging.h>
#include <osmocom/vty/misc.h>
+#include <osmocom/sbcap/sbcap_common.h>
+
#include <osmocom/cbc/debug.h>
#include <osmocom/cbc/cbc_data.h>
#include <osmocom/cbc/cbc_vty.h>
@@ -74,6 +76,13 @@
.enabled = 1,
.loglevel = LOGL_NOTICE,
},
+ [DASN1C] = {
+ .name = "DASN1C",
+ .description = "SBc-AP ASN1C enc/dec",
+ .color = "\033[1;34m",
+ .enabled = 1,
+ .loglevel = LOGL_NOTICE,
+ },
[DREST] = {
.name = "DREST",
.description = "REST interface",
@@ -250,6 +259,7 @@
msgb_talloc_ctx_init(tall_cbc_ctx, 0);
osmo_init_logging2(tall_cbc_ctx, &log_info);
log_enable_multithread();
+ sbcap_set_log_area(DSBcAP, DASN1C);
osmo_stats_init(tall_cbc_ctx);
vty_init(&vty_info);
diff --git a/src/sbcap/sbcap_common.c b/src/sbcap/sbcap_common.c
index ddc0fed..a364c63 100644
--- a/src/sbcap/sbcap_common.c
+++ b/src/sbcap/sbcap_common.c
@@ -28,7 +28,9 @@
extern int asn1_xer_print;
int _sbcap_DSBCAP = 0;
+int _sbcap_DASN1C = 0;
#define DSBCAP _sbcap_DSBCAP
+#define DASN1C _sbcap_DASN1C
static const struct value_string sbcap_procedure_code_vals[] = {
{ SBcAP_ProcedureId_Write_Replace_Warning, "Write-Replace-Warning" },
@@ -91,7 +93,8 @@
rval = aper_encode_to_buffer(&asn_DEF_SBcAP_SBC_AP_PDU, NULL, pdu,
msgb_data(msg), msgb_tailroom(msg));
if (rval.encoded < 0) {
- LOGP(DSBCAP, LOGL_ERROR, "Error encoding type: %s\n",
+ LOGP(DSBCAP, LOGL_ERROR, "%s: Error encoding type: %s\n",
+ sbcap_pdu_get_name(pdu),
rval.failed_type->name);
msgb_free(msg);
return NULL;
@@ -112,6 +115,7 @@
LOGP(DSBCAP, LOGL_ERROR, "Error decoding code=%d\n", rval.code);
return NULL;
}
+ LOGP(DSBCAP, LOGL_DEBUG, "Decoded %s\n", sbcap_pdu_get_name(pdu));
return pdu;
}
@@ -192,9 +196,10 @@
return NULL;
}
-void sbcap_set_log_area(int log_area)
+void sbcap_set_log_area(int log_area_sbcap, int log_area_asn1c)
{
- _sbcap_DSBCAP = log_area;
+ _sbcap_DSBCAP = log_area_sbcap;
+ _sbcap_DASN1C = log_area_asn1c;
}
SBcAP_Write_Replace_Warning_Request_IEs_t *sbcap_alloc_Write_Replace_Warning_Request_IE(
diff --git a/tests/sbcap/sbcap_test.c b/tests/sbcap/sbcap_test.c
index 9c8a60f..3298b60 100644
--- a/tests/sbcap/sbcap_test.c
+++ b/tests/sbcap/sbcap_test.c
@@ -202,8 +202,8 @@
static const struct log_info_cat log_categories[] = {
[0] = {
- .name = "DSBcAP",
- .description = "SBc Application Part (CBC-MME)",
+ .name = "DMAIN",
+ .description = "main category",
.color = "\033[1;32m",
.enabled = 1,
.loglevel = LOGL_DEBUG,
@@ -220,7 +220,7 @@
void *ctx = talloc_named_const(NULL, 0, "mgcp_test");
void *msgb_ctx = msgb_talloc_ctx_init(ctx, 0);
osmo_init_logging2(ctx, &log_info);
- sbcap_set_log_area(0);
+ sbcap_set_log_area(0, 0);
log_set_log_level(osmo_stderr_target, LOGL_DEBUG);
log_set_print_category_hex(osmo_stderr_target, 0);
log_set_print_category(osmo_stderr_target, 0);
3 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
--
To view, visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28821
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: Ia4cbae2395532d9b5b7b9177a7d0f31bf777d751
Gerrit-Change-Number: 28821
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged