diff --git a/src/linkeddata_api/domain/label.py b/src/linkeddata_api/domain/label.py index 2c7b215..f41fa74 100644 --- a/src/linkeddata_api/domain/label.py +++ b/src/linkeddata_api/domain/label.py @@ -36,6 +36,7 @@ def get( } ?uri ?labelProperty ?label . } + {% if uri.startswith('http://linked.data.gov.au/def/tern-cv/') %} UNION { SERVICE { BIND(<{{ uri }}> as ?uri) @@ -50,6 +51,7 @@ def get( ?uri ?labelProperty ?label . } } + {% endif %} } LIMIT 1 """ @@ -97,6 +99,7 @@ def _get_from_list_query(uris: list[str]) -> str: } ?uri ?labelProperty ?label . } + {% if uri.startswith('http://linked.data.gov.au/def/tern-cv/') %} UNION { SERVICE { BIND(<{{ uri }}> as ?uri) @@ -111,6 +114,7 @@ def _get_from_list_query(uris: list[str]) -> str: ?uri ?labelProperty ?label . } } + {% endif %} } LIMIT 1 } diff --git a/src/linkeddata_api/log_time.py b/src/linkeddata_api/log_time.py index 7d74d3a..0af5223 100644 --- a/src/linkeddata_api/log_time.py +++ b/src/linkeddata_api/log_time.py @@ -12,19 +12,32 @@ def log_time(func): @wraps(func) def wrapper(*args, **kwargs): - start = time.time() - result = func(*args, **kwargs) - end = time.time() - callerframerecord = inspect.stack()[1] frame = callerframerecord[0] info = inspect.getframeinfo(frame) - logger.debug( - "%s ran in %ss", - f"{info.filename}:{info.lineno}", - round(end - start, 2), - ) - return result + logger.debug("Running %s", f"{info.filename}:{info.lineno}") + + start = time.time() + try: + result = func(*args, **kwargs) + end = time.time() + + logger.debug( + "%s ran in %ss", + f"{info.filename}:{info.lineno}", + round(end - start, 2), + ) + return result + except Exception as err: + logger.error( + "Error occurred running %s with args: %s kwargs: %s. Message: %s", + f"{info.filename}:{info.lineno}", + str(args), + str(kwargs), + err, + ) + + raise err return wrapper