|
18 | 18 | Optional,
|
19 | 19 | TypeVar,
|
20 | 20 | Union,
|
| 21 | + overload, |
21 | 22 | )
|
22 | 23 |
|
23 | 24 | import jmespath
|
24 | 25 |
|
25 | 26 | from ..shared import constants
|
26 | 27 | from ..shared.functions import resolve_env_var_choice, resolve_truthy_env_var_choice
|
| 28 | +from ..shared.types import AnyCallableT |
27 | 29 | from .exceptions import InvalidLoggerSamplingRateError
|
28 | 30 | from .filters import SuppressFilter
|
29 | 31 | from .formatter import (
|
@@ -314,13 +316,33 @@ def _configure_sampling(self):
|
314 | 316 | f"Please review POWERTOOLS_LOGGER_SAMPLE_RATE environment variable."
|
315 | 317 | )
|
316 | 318 |
|
| 319 | + @overload |
317 | 320 | def inject_lambda_context(
|
318 | 321 | self,
|
319 |
| - lambda_handler: Optional[Callable[[Dict, Any], Any]] = None, |
| 322 | + lambda_handler: AnyCallableT, |
320 | 323 | log_event: Optional[bool] = None,
|
321 | 324 | correlation_id_path: Optional[str] = None,
|
322 | 325 | clear_state: Optional[bool] = False,
|
323 |
| - ): |
| 326 | + ) -> AnyCallableT: |
| 327 | + ... |
| 328 | + |
| 329 | + @overload |
| 330 | + def inject_lambda_context( |
| 331 | + self, |
| 332 | + lambda_handler: None = None, |
| 333 | + log_event: Optional[bool] = None, |
| 334 | + correlation_id_path: Optional[str] = None, |
| 335 | + clear_state: Optional[bool] = False, |
| 336 | + ) -> Callable[[AnyCallableT], AnyCallableT]: |
| 337 | + ... |
| 338 | + |
| 339 | + def inject_lambda_context( |
| 340 | + self, |
| 341 | + lambda_handler: Optional[AnyCallableT] = None, |
| 342 | + log_event: Optional[bool] = None, |
| 343 | + correlation_id_path: Optional[str] = None, |
| 344 | + clear_state: Optional[bool] = False, |
| 345 | + ) -> Any: |
324 | 346 | """Decorator to capture Lambda contextual info and inject into logger
|
325 | 347 |
|
326 | 348 | Parameters
|
|
0 commit comments