graphite_data
Директива `graphite_data` настраивает NGINX для сбора и отправки агрегированных метрик о запросах на указанный бэкенд Graphite.
Описание
Директива graphite_data является неотъемлемой частью модуля Graphite для NGINX и позволяет пользователям определять пользовательские метрики, которые агрегируются и отправляются на сервер Graphite. Используя эту директиву внутри блока конфигурации NGINX (в контексте http, server или location), администраторы могут указать уникальное имя метрики, которое будет фиксироваться и отчётно передаваться. Аргументы директивы могут включать сочетание имён метрик и параметров, которые уточняют, какие статистики собираются, как они агрегируются и когда отправляются.
При вызове graphite_data создаётся поток данных, связанный с определённой метрикой в указанном контексте NGINX. Эта метрика обновляется в режиме реального времени данными о трафике, такими как количество запросов, времена ответов и другими заданными параметрами. Параметры разбираются и используются для форматирования имени метрики в соответствии с graphite_config, что обеспечивает структурированную и согласованную отчётность на сервер Graphite. Данные обычно агрегируются и отправляются с заданными интервалами (по умолчанию 60 секунд). Эта функция особенно полезна для мониторинга в реальном времени и отслеживания производительности приложений, размещённых в NGINX, поскольку метрики отправляются неблокирующим образом, обеспечивая минимальное влияние на производительность самого веб-сервера.
Пример конфига
http {
graphite_config prefix=playground server=127.0.0.1;
server {
location /foo/ {
graphite_data nginx.foo;
}
}
}Убедитесь, что сервер Graphite правильно настроен и доступен из NGINX.
Проверьте, что префикс и формат имен метрик в graphite_config соответствуют ожидаемому входу для вашего бэкенда Graphite.
Помните, что указание слишком большого количества метрик может привести к снижению производительности из-за увеличенной нагрузки на память и обработку.