Grails: определить количество звонков в различные API-сервисы - PullRequest
0 голосов
/ 23 марта 2020

У меня есть это рабочее приложение Grails, и я хочу определить, сколько вызовов получает различные части его API за единицу времени. Это приложение предлагает более 100 веб-сервисов и более 10 тысяч открытых соединений в любое время, поэтому оно довольно загруженное. Написано в Граальсе 1.3.6 (разработано более 10 лет).

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

Я вижу несколько плохих возможностей:

  1. Записывать все, анализировать журналы и 'grep - c' .... (плохая идея)
  2. tcpdump ... (плохая идея)
  3. Увеличение глобальных переменных (безопасных для потоков), где я хочу их обработать ( наименьшая плохая идея)

Как я могу получить grails, чтобы сказать мне, какие службы называются и как часто? ... без убийства?

Любые идеи / указатели будут оценены: -)

1 Ответ

0 голосов
/ 25 марта 2020

Эта функциональность встроена в плагин Grails BeAPI, который я поддерживаю (https://github.com/orubel/Beapi-API-Framework).

Вся статистика на ваших конечных точках API сохраняется в локализованном кэше, а затем перемещается в общую базу данных для отчетов.

Это можно вызвать из внешнего интерфейса или с помощью curl:

curl -v -H "Content-Type: application / json" -H "Авторизация : Носитель sdf8dsf7asd8asfg8adf "--request GET" http://localhost: 8080 / v1.6.58 / stat / show"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...