Skip to content

Commit 482ad2e

Browse files
committed
fix: Networking vpc_config AttributeError and telemetry region fallback for classmethods
1 parent a3a20c7 commit 482ad2e

3 files changed

Lines changed: 10 additions & 2 deletions

File tree

sagemaker-core/src/sagemaker/core/telemetry/telemetry_logging.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ def wrapper(*args, **kwargs):
8888
sagemaker_session = None
8989
if len(args) > 0 and hasattr(args[0], "sagemaker_session"):
9090
# Get the sagemaker_session from the instance method args
91-
sagemaker_session = args[0].sagemaker_session or _get_default_sagemaker_session()
91+
sagemaker_session = args[0].sagemaker_session
9292
elif len(args) > 0 and hasattr(args[0], "_sagemaker_session"):
9393
# Get the sagemaker_session from the instance method args (private attribute)
9494
sagemaker_session = args[0]._sagemaker_session
@@ -98,6 +98,13 @@ def wrapper(*args, **kwargs):
9898
"sagemaker_session", _get_default_sagemaker_session()
9999
)
100100

101+
# Fallback: check kwargs for sagemaker_session (e.g., classmethods where
102+
# args[0] is the class and the session is passed as a keyword argument)
103+
if not sagemaker_session:
104+
sagemaker_session = kwargs.get("sagemaker_session") or (
105+
_get_default_sagemaker_session()
106+
)
107+
101108
if sagemaker_session:
102109
logger.debug("sagemaker_session found, preparing to emit telemetry...")
103110
logger.info(TELEMETRY_OPT_OUT_MESSAGING)

sagemaker-serve/src/sagemaker/serve/model_builder.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,7 @@ def _initialize_compute_config(self) -> None:
463463
def _initialize_network_config(self) -> None:
464464
"""Initialize network configuration from Networking object."""
465465
if self.network:
466-
if self.network.vpc_config:
466+
if hasattr(self.network, "vpc_config") and self.network.vpc_config:
467467
self.vpc_config = self.network.vpc_config
468468
else:
469469
self.vpc_config = (

sagemaker-serve/tests/unit/test_model_builder_coverage_boost.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -399,6 +399,7 @@ def test_from_jumpstart_config_applies_network_isolation(self, mock_deploy_kwarg
399399

400400
mock_session = Mock()
401401
mock_session.boto_region_name = "us-west-2"
402+
mock_session.sagemaker_config = None
402403

403404
mb = ModelBuilder.from_jumpstart_config(
404405
jumpstart_config=js_config,

0 commit comments

Comments
 (0)