29
29
from sagemaker .clarify import SageMakerClarifyProcessor , ModelPredictedLabelConfig
30
30
from sagemaker .lineage ._utils import get_resource_name_from_arn
31
31
32
- _LOGGER = logging .getLogger (__name__ )
32
+ # Setting _LOGGER for backward compatibility, in case users import it...
33
+ logger = _LOGGER = logging .getLogger (__name__ )
33
34
34
35
35
36
class ClarifyModelMonitor (mm .ModelMonitor ):
@@ -223,7 +224,7 @@ def _upload_analysis_config(self, analysis_config, output_s3_uri, job_definition
223
224
str (uuid .uuid4 ()),
224
225
"analysis_config.json" ,
225
226
)
226
- _LOGGER .info ("Uploading analysis config to {s3_uri}." )
227
+ logger .info ("Uploading analysis config to {s3_uri}." )
227
228
return s3 .S3Uploader .upload_string_as_file_body (
228
229
json .dumps (analysis_config ),
229
230
desired_s3_uri = s3_uri ,
@@ -604,7 +605,7 @@ def create_monitoring_schedule(
604
605
"Monitoring Schedule. To create another, first delete the existing one "
605
606
"using my_monitor.delete_monitoring_schedule()."
606
607
)
607
- _LOGGER .error (message )
608
+ logger .error (message )
608
609
raise ValueError (message )
609
610
610
611
if (batch_transform_input is not None ) ^ (endpoint_input is None ):
@@ -613,7 +614,7 @@ def create_monitoring_schedule(
613
614
"Amazon Model Monitoring Schedule. "
614
615
"Please provide only one of the above required inputs"
615
616
)
616
- _LOGGER .error (message )
617
+ logger .error (message )
617
618
raise ValueError (message )
618
619
619
620
self ._check_monitoring_schedule_cron_validity (
@@ -667,15 +668,15 @@ def create_monitoring_schedule(
667
668
self .job_definition_name = new_job_definition_name
668
669
self .monitoring_schedule_name = monitor_schedule_name
669
670
except Exception :
670
- _LOGGER .exception ("Failed to create monitoring schedule." )
671
+ logger .exception ("Failed to create monitoring schedule." )
671
672
# noinspection PyBroadException
672
673
try :
673
674
self .sagemaker_session .sagemaker_client .delete_model_bias_job_definition (
674
675
JobDefinitionName = new_job_definition_name
675
676
)
676
677
except Exception : # pylint: disable=W0703
677
678
message = "Failed to delete job definition {}." .format (new_job_definition_name )
678
- _LOGGER .exception (message )
679
+ logger .exception (message )
679
680
raise
680
681
681
682
# noinspection PyMethodOverriding
@@ -756,7 +757,7 @@ def update_monitoring_schedule(
756
757
"Amazon Model Monitoring Schedule. "
757
758
"Please provide only one of the above required inputs"
758
759
)
759
- _LOGGER .error (message )
760
+ logger .error (message )
760
761
raise ValueError (message )
761
762
762
763
# Only need to update schedule expression
@@ -820,15 +821,15 @@ def update_monitoring_schedule(
820
821
if network_config is not None :
821
822
self .network_config = network_config
822
823
except Exception :
823
- _LOGGER .exception ("Failed to update monitoring schedule." )
824
+ logger .exception ("Failed to update monitoring schedule." )
824
825
# noinspection PyBroadException
825
826
try :
826
827
self .sagemaker_session .sagemaker_client .delete_model_bias_job_definition (
827
828
JobDefinitionName = new_job_definition_name
828
829
)
829
830
except Exception : # pylint: disable=W0703
830
831
message = "Failed to delete job definition {}." .format (new_job_definition_name )
831
- _LOGGER .exception (message )
832
+ logger .exception (message )
832
833
raise
833
834
834
835
def delete_monitoring_schedule (self ):
@@ -838,7 +839,7 @@ def delete_monitoring_schedule(self):
838
839
message = "Deleting Model Bias Job Definition with name: {}" .format (
839
840
self .job_definition_name
840
841
)
841
- _LOGGER .info (message )
842
+ logger .info (message )
842
843
self .sagemaker_session .sagemaker_client .delete_model_bias_job_definition (
843
844
JobDefinitionName = self .job_definition_name
844
845
)
@@ -1045,7 +1046,7 @@ def create_monitoring_schedule(
1045
1046
"Monitoring Schedule. To create another, first delete the existing one "
1046
1047
"using my_monitor.delete_monitoring_schedule()."
1047
1048
)
1048
- _LOGGER .error (message )
1049
+ logger .error (message )
1049
1050
raise ValueError (message )
1050
1051
1051
1052
if (batch_transform_input is not None ) ^ (endpoint_input is None ):
@@ -1054,7 +1055,7 @@ def create_monitoring_schedule(
1054
1055
"Amazon Model Monitoring Schedule."
1055
1056
"Please provide only one of the above required inputs"
1056
1057
)
1057
- _LOGGER .error (message )
1058
+ logger .error (message )
1058
1059
raise ValueError (message )
1059
1060
1060
1061
self ._check_monitoring_schedule_cron_validity (
@@ -1107,15 +1108,15 @@ def create_monitoring_schedule(
1107
1108
self .job_definition_name = new_job_definition_name
1108
1109
self .monitoring_schedule_name = monitor_schedule_name
1109
1110
except Exception :
1110
- _LOGGER .exception ("Failed to create monitoring schedule." )
1111
+ logger .exception ("Failed to create monitoring schedule." )
1111
1112
# noinspection PyBroadException
1112
1113
try :
1113
1114
self .sagemaker_session .sagemaker_client .delete_model_explainability_job_definition (
1114
1115
JobDefinitionName = new_job_definition_name
1115
1116
)
1116
1117
except Exception : # pylint: disable=W0703
1117
1118
message = "Failed to delete job definition {}." .format (new_job_definition_name )
1118
- _LOGGER .exception (message )
1119
+ logger .exception (message )
1119
1120
raise
1120
1121
1121
1122
# noinspection PyMethodOverriding
@@ -1198,7 +1199,7 @@ def update_monitoring_schedule(
1198
1199
"Amazon Model Monitoring Schedule. "
1199
1200
"Please provide only one of the above required inputs"
1200
1201
)
1201
- _LOGGER .error (message )
1202
+ logger .error (message )
1202
1203
raise ValueError (message )
1203
1204
1204
1205
# Only need to update schedule expression
@@ -1265,15 +1266,15 @@ def update_monitoring_schedule(
1265
1266
if network_config is not None :
1266
1267
self .network_config = network_config
1267
1268
except Exception :
1268
- _LOGGER .exception ("Failed to update monitoring schedule." )
1269
+ logger .exception ("Failed to update monitoring schedule." )
1269
1270
# noinspection PyBroadException
1270
1271
try :
1271
1272
self .sagemaker_session .sagemaker_client .delete_model_explainability_job_definition (
1272
1273
JobDefinitionName = new_job_definition_name
1273
1274
)
1274
1275
except Exception : # pylint: disable=W0703
1275
1276
message = "Failed to delete job definition {}." .format (new_job_definition_name )
1276
- _LOGGER .exception (message )
1277
+ logger .exception (message )
1277
1278
raise
1278
1279
1279
1280
def delete_monitoring_schedule (self ):
@@ -1283,7 +1284,7 @@ def delete_monitoring_schedule(self):
1283
1284
message = "Deleting Model Explainability Job Definition with name: {}" .format (
1284
1285
self .job_definition_name
1285
1286
)
1286
- _LOGGER .info (message )
1287
+ logger .info (message )
1287
1288
self .sagemaker_session .sagemaker_client .delete_model_explainability_job_definition (
1288
1289
JobDefinitionName = self .job_definition_name
1289
1290
)
0 commit comments