Skip to content

Commit 09d78f5

Browse files
committed
make sure to handle uncaught capability exceptions when handling svc2svc events
Signed-off-by: Lance Drane <[email protected]>
1 parent e8aedf3 commit 09d78f5

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

src/intersect_sdk/service.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -600,7 +600,16 @@ def _svc2svc_event_callback(self, raw: bytes) -> None:
600600
source = message['headers']['source']
601601
event_name = message['headers']['event_name']
602602
for user_callback in self._svc2svc_events[source][event_name]:
603-
user_callback(source, message['operationId'], event_name, payload)
603+
try:
604+
user_callback(source, message['operationId'], event_name, payload)
605+
except Exception as e: # noqa: BLE001 (need to catch any possible user exception)
606+
logger.warning(
607+
'!!! INTERSECT: event callback function "%s" produced uncaught exception when handling event "%s" from "%s"',
608+
user_callback.__name__,
609+
event_name,
610+
source,
611+
)
612+
logger.warning(e)
604613

605614
@validate_call(config=ConfigDict(revalidate_instances='always'))
606615
def create_external_request(

0 commit comments

Comments
 (0)