REST API¶
Примечание
Для получения доступа к REST API необходим токен. Получение токена описано во вкладке с дополнительной информацией.
Journal API¶
Предоставляет API для доступа к журналу действий над облаком.
Сервис журналирования aos-journal-api
¶
Предоставляет историю всех действий над объектами OpenStack.
Дает возможность получать подробную информацию обо всех действиях пользователей над объектами.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
id (Optional) | path | string | Идентификатор записи в журнале. |
object_id (Optional) | path | string | Идентификатор объекта. |
object_type (Optional) | path | string | Тип объекта. |
action (Optional) | path | string | Наименование действия. |
status (Optional) | path | string | Статус действия. |
event_time (Optional) | path | string | Дата и время выполнения действия. |
action_arguments | path | string | Аргументы действия. |
response_code (Optional) | path | string | Код ответа. |
message (Optional) | path | string | Дополнительный комментарий к действию. |
user_id (Optional) | path | string | Идентификатор пользователя. |
user_name (Optional) | path | string | Имя пользователя. |
domain_id (Optional) | query | string | Идентификатор домена, которому принадлежит пользователь. |
request_id (Optional) | query | string | Идентификатор запроса. |
filter_project_id (Optional) | query | string | Идентификатор проекта. Используется для фильтрации действий над указанным проектом и над виртуальными машинами проекта. |
filter_domain_id (Optional) | query | string | Идентификатор домена. Используется для фильтрации действий над указанным доменом и действий, которые выполнены пользователем, принадлежащим указанному домену. |
offset (Optional) | query | string | Номер позиции для получения данных. |
limit (Optional) | query | string | Ограничение количества получаемых данных. |
Параметры, поддерживающие модификаторы: id
, object_id
, object_type
, action
, status
, event_time
, action_arguments
, response_code
, message
, user_id
, user_name
, domain_id
, request_id
.
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:9360/v1/journal/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
id | body | integer | Идентификатор. |
action | body | string | Наименование действия. |
action_arguments (Optional) | body | string | Аргументы в формате JSON, используемые при выполнении действия. Например: '{"user": "admin"}' . |
event_time (Optional) | body | string | Дата и время выполнения действия. |
message (Optional) | body | string | Дополнительный комментарий к действию. |
object_id | body | integer | Идентификатор объекта. |
object_type (Optional) | query | string | Тип объекта. |
request_id (Optional) | body | string | Идентификатор запроса. |
parent_request_id (Optional) | body | string | Идентификатор родительского запроса. |
response_code (Optional) | body | string | Код ответа. |
status | body | string | Статус действия. |
user_id (Optional) | query | string | Идентификатор пользователя. |
user_name | body | string | Имя пользователя. |
domain_id (Optional) | body | string | Идентификатор домена. |
Пример результата в JSON формате:
{
"journal": [
{
"action": "dashboard.user.login",
"action_arguments": null,
"event_time": "2018-03-22T07:25:31",
"id": 47,
"message": "User \"admin\" was successfully logged in.",
"object_id": "2fee08b2c0ee4ca9ad2907c922c92261",
"object_type": "project",
"parent_request_id": null,
"request_id": "624fa546-e50b-4b7c-82be-8ed496de31a7",
"response_code": null,
"status": "success",
"user_id": "5e48b18b-844d-477c-ab8d-6789a5382a14",
"user_name": "admin",
"domain_id": "46790262d1de48228a53c8887a932f48"
}
]
}
Дает возможность получать количество действий пользователей над объектами.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
id (Optional) | path | string | Идентификатор записи в журнале. |
object_id (Optional) | path | string | Идентификатор объекта. |
object_type (Optional) | path | string | Тип объекта. |
action (Optional) | path | string | Наименование действия. |
status (Optional) | path | string | Статус действия. |
event_time (Optional) | path | string | Дата и время выполнения действия. |
action_arguments | path | string | Аргументы действия. |
response_code (Optional) | path | string | Код ответа. |
message (Optional) | path | string | Дополнительный комментарий к действию. |
user_id (Optional) | path | string | Идентификатор пользователя. |
user_name (Optional) | path | string | Имя пользователя. |
domain_id (Optional) | query | string | Идентификатор домена, которому принадлежит пользователь. |
request_id (Optional) | query | string | Идентификатор запроса. |
filter_project_id (Optional) | query | string | Идентификатор проекта. Используется для фильтрации действий над указанным проектом и над виртуальными машинами проекта. |
filter_domain_id (Optional) | query | string | Идентификатор домена. Используется для фильтрации действий над указанным доменом и действий, которые выполнены пользователем, принадлежащим указанному домену. |
Параметры, поддерживающие модификаторы: id
, object_id
, object_type
, action
, status
, event_time
, action_arguments
, response_code
, message
, user_id
, user_name
, domain_id
, request_id
.
Пример запроса:¶
curl -X GET -H "X-Auth-Token: $token" -H "Content-Type: application/json" http://controller:9360/v1/journal/count | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
count | body | string | Количество записей. |
Пример результата в JSON формате:
{
"count": 1
}
Дает возможность сохранять запись о действиях пользователей над объектами.
Запрос¶
Параметры запроса:¶
Name | In | Type | Description |
---|---|---|---|
tenant_id | path | string | Идентификатор проекта, в котором авторизован пользователь. |
object_id | body | integer | Идентификатор объекта. |
object_type (Optional) | query | string | Тип объекта. |
action | body | string | Наименование действия. |
status | body | string | Статус действия. |
message (Optional) | body | string | Дополнительный комментарий к действию. |
user_id (Optional) | query | string | Идентификатор пользователя. |
user_name | body | string | Имя пользователя. |
request_id (Optional) | body | string | Идентификатор запроса. |
parent_request_id (Optional) | body | string | Идентификатор родительского запроса. |
action_arguments (Optional) | body | string | Аргументы в формате JSON, используемые при выполнении действия. Например: '{"user": "admin"}' . |
domain_id (Optional) | body | string | Идентификатор домена. |
Пример запроса:¶
curl -X POST -H "X-Auth-Token: $token" -H "Content-Type: application/json" -d '{"journal": {"object_id": "4", "object_type": "node", "action": "node_control.power_on", "status": "Success"}}' http://controller:9360/v1/journal/ | python -m json.tool
Ответ¶
Параметры ответа:¶
Name | In | Type | Description |
---|---|---|---|
id | body | integer | Идентификатор. |
action | body | string | Наименование действия. |
action_arguments (Optional) | body | string | Аргументы в формате JSON, используемые при выполнении действия. Например: '{"user": "admin"}' . |
event_time (Optional) | body | string | Дата и время выполнения действия. |
message (Optional) | body | string | Дополнительный комментарий к действию. |
object_id | body | integer | Идентификатор объекта. |
object_type (Optional) | query | string | Тип объекта. |
request_id (Optional) | body | string | Идентификатор запроса. |
parent_request_id (Optional) | body | string | Идентификатор родительского запроса. |
response_code (Optional) | body | string | Код ответа. |
status | body | string | Статус действия. |
user_id (Optional) | query | string | Идентификатор пользователя. |
user_name | body | string | Имя пользователя. |
domain_id (Optional) | body | string | Идентификатор домена. |
Пример результата в JSON формате:
{
"journal": {
"action": "node_control.power_on",
"action_arguments": null,
"event_time": "2018-03-22T07:25:31",
"id": 47,
"message": null,
"object_id": "2",
"object_type": "node",
"parent_request_id": null,
"request_id": "624fa546-e50b-4b7c-82be-8ed496de31a7",
"response_code": null,
"status": "success",
"user_id": "5e48b18b-844d-477c-ab8d-6789a5382a14",
"user_name": "admin",
"domain_id": "46790262d1de48228a53c8887a932f48"
}
}