Обновление фильтра для пересылки событий
Запрос
| Тип | Метод |
|---|---|
PUT |
/logmule_go_head_filters/update |
Описание: при выполнении запроса будет обновлена информация о фильтре для пересылки событий.
Работает по принципу частичного обновления, т.е. будут обновлены только те поля модели которые были переданы в запросе.
Пример запроса
PUT
http://127.0.0.1/cruddy/v2/logmule_go_head_filters/update
Тело запроса:
| Параметр | Тип | Обязательность | Описание |
|---|---|---|---|
| id | string |
Required | Идентификатор |
| trace_id | string |
Optional | Статистика потока по данному фильтру |
| name | string |
Optional | Название фильтра |
| is_system | boolean |
Optional | Является ли фильтр системным |
| config | Array<Config> |
Optional | Список условий для полей |
Модель Config
| Параметр | Тип | Обязательность | Описание |
|---|---|---|---|
| id | string |
Optional | ID условия фильтра. Поле не хранится в БД. При каждом запросе полю присваивается новый uuid на уровне кода. |
| compareFn | string |
Required | Функция сравнения. Допустимые значения: - equal - substr - exist - intersection |
| expressions | object |
Required | Выражения использующиеся в функции сравнения. >= 1 знаков |
| expressions{type} | string |
Required | Тип выражения. Допустимые значения: - logline-get - const-string - const-string-array |
| expressions{value} | object |
Required | Значение |
| type | string |
Required | Тип условия. Допустимые значения: compare-condition |
| parentId | string |
Optional | Идентификатор родительского элемента |
| ignore_case | boolean |
Optional | Флаг: игнорировать ли регистр при сравнении строковых данных |
| negation | boolean |
Optional | Флаг: выполнять ли инверсию по результатам сравнения |
Пример тела запроса
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"trace_id": "uuid",
"name": "string",
"is_system": false,
"config": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"compareFn": "eq",
"expressions": [
{
"type": "logline-get",
"value": "string"
}
],
"type": "compare-condition",
"parentId": "string",
"ignore_case": true,
"negation": true
}
]
}
Успешный ответ
Статус код: 200 – успешное обновление информации о фильтре для пересылки событий.
Формат: JSON.
Тело ответа: модель обновленного фильтра для пересылки событий.
Пример ответа
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"created_at": "2023-12-20T00:00:01.652259Z",
"updated_at": "2023-12-20T00:00:01.652259Z",
"name": "string",
"is_system": false,
"config": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"compareFn": "eq",
"expressions": [
{
"type": "logline-get",
"value": "string"
}
],
"type": "compare-condition",
"parentId": "string",
"ignore_case": true,
"negation": true
}
],
"stats": {
"check_count": 0,
"check_eps": 0,
"check_time": 0,
"hit_count": 0,
"hit_eps": 0
}
}
Другие возможные ответы
| Код | Ответ | Описание |
|---|---|---|
400 |
Bad Request |
Неверный тип параметра запроса, либо отсутствует обязательный параметр |
404 |
Not Found |
Редактируемый объект не найден в БД |
409 |
name_already_used |
Попытка присвоить объекту существующее уникальное значение атрибута |
500 |
Internal Server Error |
Другие ошибки при редактировании объекта |
Примечание: Текст ошибки не фиксированный, может изменяться в зависимости от фактического ответа получателя запроса.
Пример ответа
Код 400
{ "error": "Bad Request", "error_code": 400 }Код 404
{ "error": "Not Found", "error_code": 404 }Код 409
{ "error": "Bad Request", "error_code": 409, "extra": { "fields": [ "name" ] } }Код 500
{ "error": "Internal Server Error", "error_code": 500 }