Получение метки времени запуска экземпляра Amazon EC2

Я пишу код Java для EC2, который будет использовать сообщения от SQS. Мой код будет работать в течение часа, а затем просматривает очередь, чтобы определить, следует ли ему завершить работу (из-за недостаточного количества элементов, чтобы гарантировать обработку в течение еще одного часа) или продолжить работу. Чтобы это работало, мне нужно знать точную отметку времени начала выставления счетов за инстанс, чтобы я мог добавить к нему один час и при необходимости завершить работу за несколько минут до истечения часа.

Как я могу получить отметку времени запуска (время, когда AWS начинает выставлять счета за час работы экземпляра) экземпляра EC2, на котором в данный момент выполняется мой код Java, предпочтительно с помощью java SDK?


person Adam    schedule 08.09.2011    source источник


Ответы (1)


Если оболочка для uptime или добавление date +%s > /etc/started-at в загрузочный скрипт на ваш вкус слишком зависят от платформы, вы можете выполнить DescribeInstances вызовите SOAP и извлеките поле launchTime.

Чтобы узнать идентификатор экземпляра работающей машины, вы можете (изнутри машины) сделать http GET, например

curl http://169.254.169.254/latest/meta-data/instance-id
person phs    schedule 08.09.2011