diff --git a/src/python/jw/pkg/lib/ExecContext.py b/src/python/jw/pkg/lib/ExecContext.py index ba5b6a93..05001741 100644 --- a/src/python/jw/pkg/lib/ExecContext.py +++ b/src/python/jw/pkg/lib/ExecContext.py @@ -169,6 +169,7 @@ class ExecContext(abc.ABC): self.__uri = uri self.__interactive = interactive self.__verbose_default = verbose_default + self.__log_name: str|None = None assert verbose_default is not None async def __aenter__(self): @@ -181,6 +182,16 @@ class ExecContext(abc.ABC): def uri(self) -> str: return self.__uri + @property + def log_name(self) -> str: + if self.__log_name is None: + from urllib.parse import urlparse + parsed = urlparse(self.__uri) + scheme = 'local' if parsed.scheme is None else parsed.scheme + hostname = '' if parsed.hostname is None else '' + self.__log_name = f'{scheme}://{hostname}' + return self.__log_name + @property def interactive(self) -> bool|None: return self.__interactive