Рейтинг:0

Мониторинг ограничения скорости Haproxy

флаг pm

Я использую ограничение скорости со своим haproxy18 и хочу как-то выжать из него метрики на основе IP-адресов, кто близок к лимиту или как пользователи достигают лимита.

Это моя конфигурация, связанная с ограничением скорости:

...
    тип палки-таблицы размер IP-адреса 1 м срок действия 10 с хранить http_req_rate (10 с)

    tcp-запрос проверка-задержка 10 с
    tcp-запрос содержимого track-sc0 src
    http-запрос отклонить deny_status 429, если { sc_http_req_rate (0) gt 5000 }
...

На данный момент то, что я могу сделать, это очень глупое решение, и мне не нравится, что в цикле while я прослушиваю сокет и могу перенаправить вывод в файл:

во время сна 0,5; делать
                printf 'показать таблицу https\nпоказать таблицу http\n' |nc -U /var/lib/haproxy/stats готово

Это вывод времени, меня интересует ip и последнее число в строке:

0x561fd2fe50b0: ключ = 10.118.171.119 использование = 6 exp = 8726 http_req_rate (10000) = 9
0x561fd31b0270: ключ = 10.118.172.20 использование = 6 exp = 9104 http_req_rate (10000) = 10
0x561fd31d0ac0: ключ = 10.118.172.192 использование = 34 exp = 9999 http_req_rate (10000) = 1736

Я хотел бы знать, есть ли какое-либо другое более элегантное решение, или как я могу преобразовать это в запись журнала?

Я думал поставить команду даты таким образом, но я должен добавить все строки в таблицу, поэтому мне нужно перенаправить этот вывод в файл и отредактировать, а затем позволить сборщику метрик подобрать, я предполагаю, что есть какое-то более красивое решение.

while sleep 0.5;do date;printf 'показать таблицу https\nsпоказать таблицу http\n' |nc -U /var/lib/haproxy/stats;готово

Спасибо

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.