Команда SoftLayer Curl не соответствует выводу пользовательского интерфейса - PullRequest
0 голосов
/ 19 октября 2018

Я создавал и удалял виртуальные машины и пытался получить их статус на протяжении всей обработки заказа.Выходные данные всегда '{"id": [ID], "statusId": 1001}' независимо от того, где находится процесс.

В пользовательском интерфейсе это может сказать«Присоединение основного диска», но он всегда будет выводить «Active» и «1001» с помощью API.

Используемая команда:

curl https://[username]:[apiKey]@api.softlayer.com/rest/v3/Softlayer_Hardware_Server/[serverID].json

Есть причина, почему это не такРабота?Есть ли решение для получения статуса с помощью API?

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

О состоянии, которое вы видите в пользовательском интерфейсе «Присоединение основного диска» , я думаю, что вы говорите о статусе транзакции, для получения этой информации вы можете использовать следующие методы

Для виртуальныхГости: https://softlayer.github.io/reference/services/SoftLayer_Virtual_Guest/getActiveTransaction https://softlayer.github.io/reference/services/SoftLayer_Virtual_Guest/getActiveTransactions https://softlayer.github.io/reference/services/SoftLayer_Virtual_Guest/getLastTransaction

Для серверов аппаратного обеспечения: https://softlayer.github.io/reference/services/SoftLayer_Hardware_Server/getActiveTransaction https://softlayer.github.io/reference/services/SoftLayer_Hardware_Server/getActiveTransactions https://softlayer.github.io/reference/services/SoftLayer_Hardware_Server/getLastTransaction

0 голосов
/ 19 октября 2018

Когда вы создаете новую виртуальную машину, статус будет «Активен» и statusId = 1001, это означает, что он используется, когда вы отменяете виртуальную машину, статус будет «Отключен» и statusId = 1006, прежде чем будет полностью отменен.

После этого состояние «RESOURCE RESERVE» перед удалением виртуальной машины, в этом состоянии виртуальная машина больше не отображается для пользователей, будь то через пользовательский интерфейс API.

Для получения дополнительной информации вы можете увидетьследующая ссылка: Список состояний виртуального гостевого компьютера SoftLayer

Попробуйте воспользоваться приведенной ниже командой curl для получения статуса виртуальной машины:

curl -k "https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/[vmId]/getObject.json" | python -mjson.tool

Или вы можете использовать следующие остальные API:

Метод: GET

https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/[vmId]/getObject?objectMask=mask[status]
...