|
22 | 22 | from common_library.json_serialization import json_dumps |
23 | 23 | from settings_library.tracing import TracingSettings |
24 | 24 |
|
| 25 | +from .logging_errors import create_troubleshootting_log_kwargs |
25 | 26 | from .logging_utils_filtering import GeneralLogFilter, LoggerName, MessageSubstring |
26 | 27 | from .tracing import setup_log_tracing |
27 | 28 | from .utils_secrets import mask_sensitive_data |
@@ -97,9 +98,9 @@ def format(self, record) -> str: |
97 | 98 | if hasattr(record, "file_name_override"): |
98 | 99 | record.filename = record.file_name_override |
99 | 100 |
|
100 | | - optional_keys = LogExtra.__optional_keys__ | frozenset( # pylint: disable=no-member |
| 101 | + optional_keys = LogExtra.__optional_keys__ | frozenset( |
101 | 102 | ["otelTraceID", "otelSpanID"] |
102 | | - ) |
| 103 | + ) # pylint: disable=no-member |
103 | 104 | for name in optional_keys: |
104 | 105 | if not hasattr(record, name): |
105 | 106 | setattr(record, name, None) |
@@ -572,7 +573,13 @@ def log_catch(logger: logging.Logger, *, reraise: bool = True) -> Iterator[None] |
572 | 573 | logger.debug("call was cancelled") |
573 | 574 | raise |
574 | 575 | except Exception as exc: # pylint: disable=broad-except |
575 | | - logger.exception("Unhandled exception:") |
| 576 | + if not reraise: |
| 577 | + logger.exception( |
| 578 | + **create_troubleshootting_log_kwargs( |
| 579 | + "Caught unhandled exception", |
| 580 | + error=exc, |
| 581 | + ) |
| 582 | + ) |
576 | 583 | if reraise: |
577 | 584 | raise exc from exc |
578 | 585 |
|
|
0 commit comments