Как вернуть имя экземпляра блокнота AWS Sagemaker в сценарии python? - PullRequest
0 голосов
/ 28 января 2020

Немного крайнего вопроса, в основном я пытаюсь написать сценарий общего назначения, который можно настроить как cronjob на AWS Sagemaker, который будет уведомлять пользователей, если экземпляр все еще активен. Если возможно, я бы хотел иметь возможность назвать имя экземпляра AWS Sagemaker (отличного от имени активного ноутбука jupyter) в cronjob.

Не имел удалось найти что-нибудь в документации boto3 или sagemaker, указывающей c на это. Я знаю, что имя экземпляра содержится в URL-пути, но так же не нашел способа вернуться к этому. Я ожидаю, что это не предполагаемая функциональность, поэтому, вероятно, будет просто go вперед с настройкой значений вручную в файле конфигурации, но если у кого-то есть какие-либо творческие решения, я буду признателен за ввод!

1 Ответ

1 голос
/ 13 февраля 2020

Вот пример того, как получить имя экземпляра

def get_notebook_name():
    log_path = '/opt/ml/metadata/resource-metadata.json'
    with open(log_path, 'r') as logs:
        _logs = json.load(logs)
    return _logs['ResourceName']

От:

https://github.com/aws-samples/amazon-sagemaker-notebook-instance-lifecycle-config-samples/blob/62c44aa5e69f4266955476f24647b99d9b597aaf/scripts/auto-stop-idle/autostop.py#L79

...