Add verbose logging for all DAM API requests

This commit is contained in:
DJP 2025-11-26 16:26:15 -05:00
parent 531fdf3372
commit c7ddf1d45f

View file

@ -238,6 +238,32 @@ class DAMClient:
def _make_api_request(self, method, url, **kwargs):
"""Make API request with appropriate authentication"""
# Verbose logging for all DAM API calls
logger.info("=" * 80)
logger.info("DAM API REQUEST")
logger.info(" Method: {}".format(method))
logger.info(" URL: {}".format(url))
# Log headers (sanitize auth tokens)
headers = kwargs.get('headers', {})
if headers:
sanitized_headers = headers.copy()
if 'Authorization' in sanitized_headers:
sanitized_headers['Authorization'] = 'Bearer ***REDACTED***'
logger.info(" Headers: {}".format(sanitized_headers))
# Log request body/data if present
if 'json' in kwargs:
logger.info(" JSON Payload: {}".format(kwargs['json']))
elif 'data' in kwargs:
logger.info(" Data Payload: {}".format(kwargs['data']))
# Log query params if present
if 'params' in kwargs:
logger.info(" Query Params: {}".format(kwargs['params']))
logger.info("=" * 80)
if self.auth_mode == 'mtls':
# Legacy mTLS (APIM)
with pfx_to_pem(self.mtls_cert_path, self.mtls_cert_password) as cert:
@ -250,9 +276,13 @@ class DAMClient:
if 'cookies' not in kwargs: kwargs['cookies'] = {}
kwargs['cookies']['OTDSTicket'] = self.session_token
return session.request(
response = session.request(
method, url, timeout=kwargs.pop('timeout', self.timeout), **kwargs
)
# Log response status
logger.info("DAM API RESPONSE: {} - Status: {}".format(url, response.status_code))
return response
else:
# OAuth2 (Standard) OR mTLS V2 (Hybrid)
@ -263,13 +293,17 @@ class DAMClient:
kwargs['headers'] = {}
kwargs['headers']['Authorization'] = 'Bearer {}'.format(token)
return requests.request(
response = requests.request(
method,
url,
verify=False, # Disable SSL verification for OAuth/Hybrid
timeout=kwargs.pop('timeout', self.timeout),
**kwargs
)
# Log response status
logger.info("DAM API RESPONSE: {} - Status: {}".format(url, response.status_code))
return response
def search_campaigns(self, status=None, campaign_type='Local Adaptation'):
"""