Skip to content
На этой странице:

Работа с операциями

Каждая мутабельная операция (изменяющая состояние компонента), автоматически создает объект Operation. Этот объект содержит информацию об операции: статус, ID, время вызова и другую.

Используя данные объекта Operation, возможно:

  • Просматривать список операций, которые были выполнены над заданным компонентом.
  • Отслеживать статус операций, которые занимают неопределенное время — например, создание БД или подключение диска.
  • Выполнять отмену операции.

Формат объекта Operation

  • createdAtstring — дата создания операции;
  • createdBystring — идентификатор пользователя, создавшего операцию;
  • errorDataerrhub.ErrorResponse{...} — объект с деталями ошибок выполнения операции;
  • errorMessagestring — текст ошибки;
  • operationIDstring — идентификатор операции;
  • serviceIDstring — идентификатор сервиса;
  • statusstring — статус операции (succeed, running, error);
  • typestring — тип операции (creating, updating, deleting);
  • updatedAtstring — дата последнего изменения операции.

Обеспечение уникального идентификатора операции

При выполнении мутабельной операции через API необходимо передавать в заголовках запроса ключ идемпотентности — тогда при многократном вызове этой операции будет возвращаться один и тот же результат. То есть, если повторно отправить запрос c тем же Idempotency-Key, то сервер:

  • не будет выполнять операцию повторно;
  • вернет объект Operation — в нем будет содержаться информация об операции, которая была вызвана при изначальном запросе.

Ключ идемпотентности можно сгенерировать сторонними библиотеками или c помощью онлайн-сервиса, например https://www.uuidgenerator.net/version4.