@@ -428,7 +428,10 @@ def check_s3_object_exists(s3_file_path: str) -> bool:
428428
429429 """
430430 if not is_s3_enabled ():
431+ logger .info ("S3 not enabled, skipping object existence check" , extra = {"s3_file_path" : s3_file_path })
431432 return False
433+
434+ logger .info ("Checking S3 object existence" , extra = {"s3_file_path" : s3_file_path })
432435 _cache_lookup_counter .labels (url = s3_file_path ).inc ()
433436 try :
434437 s3_client = create_s3_client ()
@@ -440,15 +443,38 @@ def check_s3_object_exists(s3_file_path: str) -> bool:
440443 # Object doesn't exist if we get a 404 error
441444 error_code = err .response .get ("Error" , {}).get ("Code" )
442445 if error_code == "404" :
446+ logger .info (
447+ "S3 object not found" ,
448+ extra = {
449+ "s3_file_path" : s3_file_path ,
450+ "bucket_name" : get_s3_bucket_name (),
451+ "error_code" : error_code ,
452+ },
453+ )
443454 _cache_miss_counter .labels (url = s3_file_path ).inc ()
444455 return False
445456 # Re-raise other errors (permissions, etc.)
446457 raise
447- except Exception :
458+ except Exception as exc :
448459 # For any other exception, assume object doesn't exist
460+ logger .info (
461+ "S3 object check failed with exception, assuming not found" ,
462+ extra = {
463+ "s3_file_path" : s3_file_path ,
464+ "bucket_name" : get_s3_bucket_name (),
465+ "exception" : str (exc ),
466+ },
467+ )
449468 _cache_miss_counter .labels (url = s3_file_path ).inc ()
450469 return False
451470 else :
471+ logger .info (
472+ "S3 object found" ,
473+ extra = {
474+ "s3_file_path" : s3_file_path ,
475+ "bucket_name" : get_s3_bucket_name (),
476+ },
477+ )
452478 _cache_hit_counter .labels (url = s3_file_path ).inc ()
453479 return True
454480
0 commit comments