@@ -47,6 +47,18 @@ def __post_init__(self):
4747 self .params = self .validator (** self .params ).dict (exclude_none = True )
4848 logger .debug ("Request object params after validation: %s" , self .params )
4949
50+ def _sanitize_params (self ) -> dict :
51+ """
52+ Creates a copy of params with sensitive data redacted for logging.
53+
54+ Returns:
55+ A sanitized copy of the parameters dictionary.
56+ """
57+ logger_params = self .params .copy ()
58+ if "api_key" in logger_params :
59+ logger_params ["api_key" ] = "***"
60+ return logger_params
61+
5062 def get (self ):
5163 """
5264 Executes a GET request from the specified API.
@@ -57,13 +69,10 @@ def get(self):
5769 A requests.Response object with the result of the HTTP call.
5870 """
5971 self .params ["api_key" ] = self .api_key
60- logger_params = self .params .copy ()
61- if "api_key" in logger_params :
62- logger_params ["api_key" ] = "***"
6372 logger .info (
6473 "Calling %s with params: %s" ,
6574 self .url ,
66- json .dumps (logger_params , indent = 2 ),
75+ json .dumps (self . _sanitize_params () , indent = 2 ),
6776 )
6877 return requests .get (
6978 self .url , params = self .params , headers = self .headers , timeout = None
@@ -79,13 +88,10 @@ def post(self):
7988 A requests.Response object with the result of the HTTP call.
8089 """
8190 self .headers ["X-api-key" ] = self .api_key
82- logger_params = self .params .copy ()
83- if "api_key" in logger_params :
84- logger_params ["api_key" ] = "***"
8591 logger .info (
8692 "Calling %s with params: %s" ,
8793 self .url ,
88- json .dumps (logger_params , indent = 2 ),
94+ json .dumps (self . _sanitize_params () , indent = 2 ),
8995 )
9096 return requests .post (
9197 self .url , json = self .params , headers = self .headers , timeout = None
0 commit comments