Отслеживайте время отклика веб-API на уровне веб-сервера

Я пытался измерить некоторые показатели (особенно время ответа для разных URL-адресов) для своего веб-приложения, которое будет испытывать некоторую пользовательскую нагрузку. Я выбрал InfluxDB, поскольку он может обрабатывать большие объемы данных и прекрасно интегрируется с Grafana (мне тоже подходит графит). Я собирался публиковать время ответа из моего флеш-приложения в InfluxDB, используя клиент Python Influxdb.

Интересно, есть ли инструмент или простой способ заполнить InfluxDB из NGINX или uWSGI, чтобы повысить производительность и выгрузить их из моего приложения на Python?


person Arman Ordookhani    schedule 28.03.2015    source источник


Ответы (1)


Если вы хотите передать данные о производительности со своего веб-сервера в InfluxDB, есть несколько способов сделать это. Я бы порекомендовал вам следующее:

  1. Позвольте вашему веб-серверу регистрировать запросы через системный журнал
  2. Используйте syslog-ng для обработки журналов.
  3. syslog-ng может отправлять данные в Graphite: Ссылка
  4. InfluxDB имеет встроенный графитовый адаптер, который может считывать графитовый протокол и помещать данные в InfluxDB
  5. Используйте Grafana, чтобы отобразить свои InflxuDB данные

Это всего лишь пример набора инструментов. Вы также можете использовать CollectD для сбора показателей производительности и отправки их в графитовый адаптер InfluxDB. Но я думаю, что решение syslog-ng более элегантно.

person Christian Eichelmann    schedule 28.03.2015
comment
Спасибо! Я не знал, что они могут войти в системный журнал без плагинов. Кажется, NGINX ›= 1.7.1 может это сделать. - person Arman Ordookhani; 29.03.2015