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/.
fixeria gerrit-no-reply at lists.osmocom.orgfixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/24021 ) Change subject: trx_toolkit/data_if.py: enrich encoding/decoding error messages ...................................................................... trx_toolkit/data_if.py: enrich encoding/decoding error messages The keyword 'exc_info' of the logging API allows us to see a lot more detailed information about the exception being caught, for example: ''' [ERROR] data_if.py:68 Failed to parse a TRXD Tx message from r=127.0.0.1:5802 Traceback (most recent call last): File "/home/fixeria/trx_toolkit/codec.py", line 329, in _from_bytes offset += f.from_bytes(vals, data[offset:]) File "/home/fixeria/trx_toolkit/codec.py", line 94, in from_bytes self._from_bytes(vals, data[:length]) File "/home/fixeria/trx_toolkit/codec.py", line 239, in _from_bytes f.dec_val(vals, blob) File "/home/fixeria/trx_toolkit/codec.py", line 287, in dec_val raise DecodeError('Unexpected value %d, expected %d' codec.DecodeError: Unexpected value 6, expected 2 The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/fixeria/trx_toolkit/data_if.py", line 66, in recv_tx_msg msg.from_bytes(data) File "/home/fixeria/trx_toolkit/data_msg.py", line 201, in from_bytes self.codec._from_bytes(self.c, msg) File "/home/fixeria/trx_toolkit/codec.py", line 332, in _from_bytes raise DecodeError(self, f, offset) from e codec.DecodeError: (<trxd_proto.PDUv2Tx object at 0x7facbd079220>, <trxd_proto.Header object at 0x7facbd076b50>, 0) ''' >From this example it can be seen that the 'codec.DecodeError' exception has occured while parsing the 'Header' part of the 'PDUv2Tx' at offset 0, and caused by an unexpected TRXD PDU version value. Change-Id: Iec80890e52f7aa24c145356b5f2e1f66a47fbd4c Related: OS#4006, SYS#4895 --- M src/target/trx_toolkit/data_if.py 1 file changed, 9 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/21/24021/1 diff --git a/src/target/trx_toolkit/data_if.py b/src/target/trx_toolkit/data_if.py index f754c6c..5e8fe6e 100644 --- a/src/target/trx_toolkit/data_if.py +++ b/src/target/trx_toolkit/data_if.py @@ -64,9 +64,9 @@ try: msg = TxMsg(self._hdr_ver) msg.from_bytes(data) - except: - log.error("Failed to parse a TRXD Tx message " - "from R:%s:%u" % (self.remote_addr, self.remote_port)) + except Exception as e: + log.error("Failed to parse a TRXD Tx message from r=%s:%u", + self.remote_addr, self.remote_port, exc_info=e) return None return msg @@ -79,9 +79,9 @@ try: msg = RxMsg(self._hdr_ver) msg.from_bytes(data) - except: - log.error("Failed to parse a TRXD Rx message " - "from R:%s:%u" % (self.remote_addr, self.remote_port)) + except Exception as e: + log.error("Failed to parse a TRXD Rx message from r=%s:%u", + self.remote_addr, self.remote_port, exc_info=e) return None return msg @@ -89,9 +89,9 @@ def send_msg(self, msg: RxMsg) -> None: try: payload = msg.to_bytes() - except ValueError as e: - log.error("Failed to encode a TRXD message ('%s') " - "due to error: %s" % (msg.desc_hdr(), e)) + except Exception as e: + log.error("Failed to encode a TRXD message ('%s')", + msg.desc_hdr(), exc_info=e) # TODO: we may want to send a NOPE.ind here return -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/24021 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Change-Id: Iec80890e52f7aa24c145356b5f2e1f66a47fbd4c Gerrit-Change-Number: 24021 Gerrit-PatchSet: 1 Gerrit-Owner: fixeria <vyanitskiy at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210430/d6a389d0/attachment.htm>