fix(logging): removed args/kwargs from logging messages

This commit is contained in:
2026-06-02 12:27:23 +02:00
committed by Jan Wyzula
co-authored by Jan Wyzula
parent c8275fcfd5
commit 2fb7fb2ff4
7 changed files with 16 additions and 59 deletions
+3 -6
View File
@@ -16,7 +16,7 @@ from bec_lib.service_config import ServiceConfig
from qtpy.QtCore import QObject
from qtpy.QtCore import Signal as pyqtSignal
from bec_widgets.utils.rpc_logging import elapsed_seconds, format_elapsed, format_rpc_payload
from bec_widgets.utils.rpc_logging import elapsed_seconds, format_elapsed
from bec_widgets.utils.serialization import register_serializer_extension
logger = bec_logger.logger
@@ -43,23 +43,20 @@ def _log_rpc_dispatcher_receive(msg_content: Any, metadata: Any) -> None:
dispatch_latency = elapsed_seconds(sent_at, dispatch_received_at)
stale_on_dispatch = deadline is not None and dispatch_received_at > deadline
target_gui_id = parameter.get("gui_id") or metadata.get("target_gui_id")
args_log = format_rpc_payload(parameter.get("args", []))
kwargs_log = format_rpc_payload(parameter.get("kwargs", {}))
logger.info(
"GUI RPC dispatcher received request before Qt callback emit "
f"request_id={request_id} method={method} receiver={metadata.get('receiver')} "
f"target_gui_id={target_gui_id} object_name={metadata.get('object_name')} "
f"timeout={timeout} dispatch_latency_s={format_elapsed(dispatch_latency)} "
f"stale_on_dispatch={stale_on_dispatch} args={args_log} kwargs={kwargs_log}"
f"stale_on_dispatch={stale_on_dispatch}"
)
if stale_on_dispatch:
logger.warning(
"GUI RPC dispatcher received request after client timeout deadline "
f"request_id={request_id} method={method} receiver={metadata.get('receiver')} "
f"target_gui_id={target_gui_id} object_name={metadata.get('object_name')} "
f"timeout={timeout} dispatch_latency_s={format_elapsed(dispatch_latency)} "
f"args={args_log} kwargs={kwargs_log}"
f"timeout={timeout} dispatch_latency_s={format_elapsed(dispatch_latency)}"
)
-12
View File
@@ -1,17 +1,5 @@
from __future__ import annotations
from typing import Any
def format_rpc_payload(value: Any, limit: int = 500) -> str:
try:
text = repr(value)
except Exception as exc: # pragma: no cover - defensive logging helper
text = f"<unrepresentable {type(value).__name__}: {exc}>"
if len(text) <= limit:
return text
return f"{text[:limit]}...<truncated {len(text) - limit} chars>"
def elapsed_seconds(start: float | int | None, stop: float) -> float | None:
if start is None:
+6 -12
View File
@@ -19,7 +19,7 @@ from bec_widgets.utils.bec_connector import BECConnector
from bec_widgets.utils.bec_dispatcher import BECDispatcher
from bec_widgets.utils.container_utils import WidgetContainerUtils
from bec_widgets.utils.error_popups import ErrorPopupUtility
from bec_widgets.utils.rpc_logging import elapsed_seconds, format_elapsed, format_rpc_payload
from bec_widgets.utils.rpc_logging import elapsed_seconds, format_elapsed
from bec_widgets.utils.rpc_register import RPCRegister
from bec_widgets.utils.screen_utils import apply_window_geometry
from bec_widgets.widgets.containers.dock_area.dock_area import BECDockArea
@@ -121,8 +121,6 @@ class RPCServer:
parameter = msg.get("parameter", {})
args = parameter.get("args", [])
kwargs = parameter.get("kwargs", {})
args_log = format_rpc_payload(args)
kwargs_log = format_rpc_payload(kwargs)
target_gui_id = parameter.get("gui_id")
sent_at = metadata.get("sent_at")
deadline = metadata.get("deadline")
@@ -135,15 +133,14 @@ class RPCServer:
f"request_id={request_id} method={method} gui_id={self.gui_id} "
f"target_gui_id={target_gui_id} timeout={timeout} "
f"receive_latency_s={format_elapsed(receive_latency)} "
f"stale_on_receive={stale_on_receive} args={args_log} kwargs={kwargs_log}"
f"stale_on_receive={stale_on_receive}"
)
if stale_on_receive:
logger.warning(
"GUI RPC server received request after client timeout deadline "
f"request_id={request_id} method={method} gui_id={self.gui_id} "
f"target_gui_id={target_gui_id} timeout={timeout} "
f"receive_latency_s={format_elapsed(receive_latency)} "
f"args={args_log} kwargs={kwargs_log}"
f"receive_latency_s={format_elapsed(receive_latency)}"
)
logger.debug(f"Received RPC instruction: {msg}, metadata: {metadata}")
execution_start = time.perf_counter()
@@ -160,8 +157,7 @@ class RPCServer:
logger.error(
"GUI RPC server execution failed "
f"request_id={request_id} method={method} gui_id={self.gui_id} "
f"target_gui_id={target_gui_id} execution_duration_s={execution_duration:.3f} "
f"args={args_log} kwargs={kwargs_log}\n"
f"target_gui_id={target_gui_id} execution_duration_s={execution_duration:.3f}\n"
f"{content}"
)
self.send_response(request_id, False, {"error": content})
@@ -172,16 +168,14 @@ class RPCServer:
"GUI RPC server executed request "
f"request_id={request_id} method={method} gui_id={self.gui_id} "
f"target_gui_id={target_gui_id} execution_duration_s={execution_duration:.3f} "
f"response_after_client_deadline={response_stale} "
f"args={args_log} kwargs={kwargs_log}"
f"response_after_client_deadline={response_stale}"
)
if response_stale:
logger.warning(
"GUI RPC server response is late for client timeout "
f"request_id={request_id} method={method} gui_id={self.gui_id} "
f"target_gui_id={target_gui_id} timeout={timeout} "
f"execution_duration_s={execution_duration:.3f} "
f"args={args_log} kwargs={kwargs_log}"
f"execution_duration_s={execution_duration:.3f}"
)
logger.debug(f"RPC instruction executed successfully: {res}")
self._rpc_singleshot_repeats[request_id] = SingleshotRPCRepeat()