Always log exception using logging.exception

This commit is contained in:
Josh Wu
2025-08-18 15:38:43 +08:00
parent 3b8dd6f3cf
commit 4a88e9a0cf
16 changed files with 65 additions and 74 deletions

View File

@@ -48,8 +48,8 @@ def _wrap_transport(transport: Transport) -> Transport:
return SnoopingTransport.create_with(
transport, create_snooper(snooper_spec)
)
except Exception as exc:
logger.warning(f'Exception while creating snooper: {exc}')
except Exception:
logger.exception('Exception while creating snooper')
return transport

View File

@@ -90,8 +90,8 @@ class PacketPump:
try:
# Deliver the packet to the sink
self.sink.on_packet(await self.reader.next_packet())
except Exception as error:
logger.warning(f'!!! {error}')
except Exception:
logger.exception('!!!')
# -----------------------------------------------------------------------------
@@ -158,10 +158,8 @@ class PacketParser:
if self.sink:
try:
self.sink.on_packet(bytes(self.packet))
except Exception as error:
logger.exception(
color(f'!!! Exception in on_packet: {error}', 'red')
)
except Exception:
logger.exception(color('!!! Exception in on_packet', 'red'))
self.reset()
def set_packet_sink(self, sink: TransportSink) -> None:
@@ -378,7 +376,7 @@ class PumpedPacketSource(ParserSource):
self.terminated.set_result(None)
break
except Exception as error:
logger.warning(f'exception while waiting for packet: {error}')
logger.exception('exception while waiting for packet')
if not self.terminated.done():
self.terminated.set_exception(error)
break
@@ -409,8 +407,8 @@ class PumpedPacketSink:
except asyncio.CancelledError:
logger.debug('sink pump task done')
break
except Exception as error:
logger.warning(f'exception while sending packet: {error}')
except Exception:
logger.exception('exception while sending packet')
break
self.pump_task = asyncio.create_task(pump_packets())

View File

@@ -285,7 +285,7 @@ async def open_pyusb_transport(spec: str) -> Transport:
try:
device = await _power_cycle(device) # type: ignore
except Exception as e:
logging.debug(e)
logging.debug(e, stack_info=True)
logging.info(f"Unable to power cycle {hex(device.idVendor)} {hex(device.idProduct)}") # type: ignore
# Collect the metadata
@@ -371,9 +371,8 @@ async def _power_cycle(device: UsbDevice) -> UsbDevice:
# Device needs to be find again otherwise it will appear as disconnected
return usb.core.find(idVendor=device.idVendor, idProduct=device.idProduct) # type: ignore
except USBError as e:
logger.error(f"Adjustment needed: Please revise the udev rule for device {hex(device.idVendor)}:{hex(device.idProduct)} for proper recognition.") # type: ignore
logger.error(e)
except USBError:
logger.exception(f"Adjustment needed: Please revise the udev rule for device {hex(device.idVendor)}:{hex(device.idProduct)} for proper recognition.") # type: ignore
return device

View File

@@ -292,9 +292,9 @@ async def open_usb_transport(spec: str) -> Transport:
if self.sink:
try:
self.sink.on_packet(packet)
except Exception as error:
except Exception:
logger.exception(
color(f'!!! Exception in sink.on_packet: {error}', 'red')
color('!!! Exception in sink.on_packet', 'red')
)
def close(self):