in codes/lambda/mlops-query-accuracy/src/handler.py [0:0]
def handle(event, context):
print('handle---', event)
if 'TrainSageMaker' in event and 'TrainingJobName' in event['TrainSageMaker']:
client = boto3.client('sagemaker')
training_job_name = event['TrainSageMaker']['TrainingJobName']
try:
response = client.describe_training_job(
TrainingJobName=training_job_name
)
print('response', response)
for metric in response["FinalMetricDataList"]:
metric["Timestamp"] = metric["Timestamp"].timestamp()
print('Metric ==> {}'.format(json.dumps(response["FinalMetricDataList"])))
return {'Metrics': response["FinalMetricDataList"]}
except ClientError as e:
error_msg = '{} is not existent in training list'.format(training_job_name)
print(error_msg)
raise KeyError(error_msg)
else:
error_msg = 'key error: check key in event - {}'.format(json.dumps(event))
print(error_msg)
raise KeyError(error_msg)