Создание фильтра для пересылки событий
Запрос
| Тип | Метод |
|---|---|
POST |
/logmule_go_head_filters/create |
Описание: При выполнении запроса будет создан фильтр для пересылки событий с заданными параметрами.
Пример запроса
POST
http://127.0.0.1/cruddy/v2/logmule_go_head_filters/create
Тело запроса:
| Параметр | Тип | Обязательность | Описание |
|---|---|---|---|
| name | string |
Required | Название фильтра |
| is_system | boolean |
Optional | Является ли фильтр системным |
| config | Array<Config> |
Required | Список условий для полей |
| trace_id | string |
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 | Флаг: выполнять ли инверсию по результатам сравнения |
Пример тела запроса
{
"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
}
],
"trace_id": "uuid"
}
Успешный ответ
Статус код: 201 - успешное создание фильтра для пересылки событий.
Формат: 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 |
Неверный тип параметра запроса, либо отсутствует обязательный параметр |
409 |
name_already_used |
Попытка создать объект с существующим уникальным атрибутом |
500 |
Internal Server Error |
Другие ошибки при создании объекта |
Примечание: Текст ошибки не фиксированный, может изменяться в зависимости от фактического ответа получателя запроса.
Пример ответа
Код 400
{ "error": "Bad Request", "error_code": 400 }Код 409
{ "error": "name_already_used", "error_code": 409, "extra": { "fields": [ "name" ] } }Код 500
{ "error": "Internal Server Error", "error_code": 500 }