Получить список заблокированных запросов

Получить список заблокированных запросов

Получить список заблокированных запросов ​

Возвращает список запросов, заблокированных ограничениями REST-сервера.

Запрос ​

HTTP Запрос ​

text
GET /node/api/limit-block-log

Права ​

text
manage-users

Параметры пути ​

Параметры не требуются.

Параметры запроса ​

ПараметрТипОписание
fromIntegerОт какой даты искать записи.
ipBooleanЕсли true, то этот запрос вернёт только записи с не пустым полем ip. По умолчанию false.
limitIntegerМаксимальное количество возвращаемых записей.
loginBooleanЕсли true, то этот запрос вернёт только записи с не пустым полем login. По умолчанию false.
skipIntegerСколько записей с начала списка нужно пропустить.
toIntegerДо какой даты искать записи.
uriBooleanЕсли true, то этот запрос вернёт только записи с не пустым полем uri. По умолчанию false.
userBooleanЕсли true, то этот запрос вернёт только записи с не пустым полем user. По умолчанию false.

Тело запроса ​

Тело запроса пустое.

Ответ ​

ПолеТипОписание
ipStringIP адрес, с которого был отправлен заблокированный запрос.
loginStringЛогин пользователя, который отправил заблокированный запрос.
timestampIntegerВремя заблокированного запроса.
ttlIntegerВремя блокировки запроса.
uriStringЗаблокированный URI.
userStringID пользователя, который отправил заблокированный запрос.

Пример ​

Запрос ​

  • Bash
  • JavaScript
  • NodeJS
  • Python
bash
login=<...>
password=<...>
saymon_hostname=<...>
url=http://$saymon_hostname/node/api/limit-block-log?ip=false
curl -X GET $url -u $login:$password
javascript
let login = <...>
let password = <...>
let auth = "Basic " + btoa(login + ":" + password)
let path = "/node/api/limit-block-log?limit=1&user=true"
let saymonHostname = <...>

let myHeaders = new Headers();
myHeaders.append("Authorization", auth);

let requestOptions = {
  method: 'GET',
  headers: myHeaders,
  redirect: 'follow'
};

fetch(saymonHostname + path, requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
javascript
let http = require('follow-redirects').http;
let fs = require('fs');
let saymonHostname = <...>;
let login = <...>;
let password = <...>;
let path = '/node/api/limit-block-log?limit=1&user=true';
let auth = 'Basic ' + Buffer.from(login + ':' + password).toString('base64');

let options = {
  'method': 'GET',
  'hostname': saymonHostname,
  'path': path,
  'headers': {
    'Authorization': auth
  },
  'maxRedirects': 20
};

let req = http.request(options, function (res) {
  let chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function (chunk) {
    let body = Buffer.concat(chunks);
    console.log(body.toString());
  });

  res.on("error", function (error) {
    console.error(error);
  });
});

req.end();
python
import requests
login = <...>
password = <...>
saymon_hostname = <...>
path = "/node/api/limit-block-log?limit=1&user=true"

url = "http://" + saymon_hostname + path

response = requests.request("GET", url, auth=(login, password))

print(response.text)

Ответ ​

json
[
    {
        "timestamp": 1617960251155,
        "ttl": 47,
        "user": "57ff6853fa6db3a63d16d07b",
        "uri": "/api/objects/:id/stat",
        "login": "user"
    },
...
]