Don't exception log multi-cancels

denoise_logging
Tyler Goodlet 2020-12-25 15:20:58 -05:00
parent 5d7a4e2b12
commit c28ffd8b1c
1 changed files with 7 additions and 2 deletions
tractor

View File

@ -25,7 +25,8 @@ from .log import get_logger
from ._exceptions import ( from ._exceptions import (
pack_error, pack_error,
unpack_error, unpack_error,
ModuleNotExposed ModuleNotExposed,
is_multi_cancelled,
) )
from . import _debug from . import _debug
from ._discovery import get_arbiter from ._discovery import get_arbiter
@ -129,7 +130,11 @@ async def _invoke(
except (Exception, trio.MultiError) as err: except (Exception, trio.MultiError) as err:
if not isinstance(err, trio.ClosedResourceError): # TODO: maybe we'll want differnet "levels" of debugging
# eventualy such as ('app', 'supervisory', 'runtime') ?
if not isinstance(err, trio.ClosedResourceError) and (
not is_multi_cancelled(err)
):
log.exception("Actor crashed:") log.exception("Actor crashed:")
# XXX: is there any case where we'll want to debug IPC # XXX: is there any case where we'll want to debug IPC
# disconnects? I can't think of a reason that inspecting # disconnects? I can't think of a reason that inspecting