Настройка удаленной передачи системных логов
Получение статуса работы службы
GET /logs_backend/remote_syslog/status
Ответ на успешный запрос:
[
{
"name": "string",
"status": "active" | "activating" | "deactivating" | "failed" | "inactive" | "reloading",
"msg": [ "string" ]
},
...
]
name
- название модуля;status
- статус;msg
- список сообщений, объясняющий текущее состояние.
Общие настройки
Включение/выключение службы
Проверка состояния:
GET /logs_backend/remote_syslog/state
Ответ на успешный запрос:
{
"enabled": "boolean"
}
msg
-true
для включения,false
для выключения.
Включение/выключение
PUT /logs_backend/remote_syslog/state
Json-тело запроса:
{
"enabled": "boolean"
}
Ответ на успешный запрос: 200 OK
Получение настроек удаленной передачи системных логов
GET /logs_backend/remote_syslog
Ответ на успешный запрос:
{
"host": "string",
"port": "integer",
"protocol": "tcp" | "udp",
"format": "syslog" | "cef"
}
host
- IP-адрес сервера;port
- порт;protocol
- протокол, допустимые значения:tcp
илиudp
;format
- формат, допустимые значения:syslog
илиcef
.
Изменение настроек удаленной передачи системных логов
PATCH /logs_backend/remote_syslog
Json-тело запроса:
{
"host": "string" | "null",
"port": "integer" | "null",
"protocol": "tcp" | "udp",
"format": "syslog" | "cef",
}
host
- IP-адрес сервера;port
- порт;protocol
- протокол, допустимые значения:tcp
илиudp
;format
- формат, допустимые значения:syslog
илиcef
.
Пустые значения "" не допускаются.
Ответ на успешный запрос: 200 OK
Получение данных о логировании для таблицы
GET /logs_backend/logs?<GET-параметры, разделенные знаком &>
Список GET-параметров, которые не являются обязательными:
limit: integer
- ограничение на количество записей, выбираемых из базы данных;offset: integer
- количество строк, которые необходимо пропустить перед выводом записей указанных вlimit
;sort: [Sort]
- Список параметров для сортировки данных. Сортировка производится в прямом порядке следования в массиве;filter: [Filter]
- Список параметров для фильтрации данных. Фильтры применяются в прямом порядке следования в массиве, с логикойand
между объектамиFilter
;search: Search
- объект с параметрами поиска подстроки в данных;last_reboot_only: bool
- параметр типаbool
со значениями:false
- выводить все записи лога,true
- только записи после последней загрузки;format_type:
- формат возвращаемых данных:CSV
- CSV-файл;JSON
- тип по умолчанию.
Обьект Sort:
{
"field": "string",
"direction": "asc | desc"
}
field
- столбец, по которому производится сортировка;direction
- направление сортировки:asc
- по возрастанию,desc
- по убыванию.
Обьект Filter:
{
"items": [
{
"column_name": "string",
"operator": "OperatorValue",
"value": ["string | integer | boolean"]
},
],
"link_operator": "and | or"
}
items
- массив фильтров FilterItem:column_name
- поле для фильтрации;operator
- одно из значений:contains
- содержит подстроку (без учета регистра);not_contains
- не содержит подстроку (без учета регистра);equals
- равно;not_equals
- не равно;greater
- больше, вvalues
передаётся массив, содержащий только одно значение;greater_equal
- больше или равно, вvalues
передается массив, содержащий только одно значение;less
- меньше, вvalues
передаётся массив, содержащий только одно значение;less_equal
- меньше или равно, вvalues
передается массив, содержащий только одно значение.
value
- массив значений фильтра. Максимальное количество передаваемых в массиве значений - 255. Данные отбираются по логикеor
.
link_operator
- логика наложения фильтров items.
Обьект Search:
{
"text": "string",
"columns": ["string"]
}
text
- искомая строка;columns
- набор полей, по которым ведется поиск.
Ответ на успешный запрос:
{
"meta": [
{
"name": "string",
"type": "string"
}
],
"data": [
"Log"
],
"rows": "integer",
"rows_before_limit_at_least": "integer"
}
meta
- массив метаданных, описывающих поля запроса:name
- имя поля данных;type
- тип данных.
data
- массив, содержащийLog
- объект, представляющий собой данные, соответствующие одной строке таблицы.;rows
- количество строкLog
;rows_before_limit_at_least
- количество строкLog
, которое вернет запрос, если использовать ограничение на количество записей из базы данных (GET-параметрыlimit
илиoffset
).
Объект Log:
{
"id": "string",
"date_time": "integer",
"microseconds": "integer",
"priority": "integer",
"message": "string",
"syslog_id": "string",
"unit": "string"
}
id
- уникальный идентификатор строки;date_time
- время возникновения события в формате YYYYMMDDhhmmss;microseconds
- микросекунды во времени возникновения события (0...999999);priority
- число от 0 до 7:0
- LOG_EMERG;1
- LOG_ALERT;2
- LOG_CRIT;3
- LOG_ERR;4
- LOG_WARNING;5
- LOG_NOTICE;6
- LOG_INFO;7
- LOG_DEBUG.
message
- сообщение логирования;syslog_id
- название исполняемой программы;unit
- название сервиса, сообщение которого было сохранено в журнале.
Last updated