hwmarkcheng commented on code in PR #26443: URL: https://github.com/apache/superset/pull/26443#discussion_r1459554409
########## superset/utils/decorators.py: ########## @@ -61,6 +65,82 @@ def wrapped(*args: Any, **kwargs: Any) -> Any: return decorate +def logs_context( + context_func: Callable[..., dict[Any, Any]] | None = None, + **ctx_kwargs: int | str | UUID | None, +) -> Callable[..., Any]: + """ + Takes arguments and adds them to the global logs_context. + This is for logging purposes only and values should not be relied on or mutated + """ + + def decorate(f: Callable[..., Any]) -> Callable[..., Any]: + def wrapped(*args: Any, **kwargs: Any) -> Any: + if not hasattr(g, "logs_context"): + g.logs_context = {} + + # limit data that can be saved to logs_context + # in order to prevent antipatterns + available_logs_context_keys = [ Review Comment: Hey Elizabeth, that sounds great! As for now there's no other data we need aside from dataset_id/slice_id so this is good on our end. Was just pointing this out as a future suggestion. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For additional commands, e-mail: notifications-h...@superset.apache.org