server_traffic_status_limit_traffic_by_set_key
Ограничивает сбор статистики трафика на основе указанных ключей.
Описание
Директива server_traffic_status_limit_traffic_by_set_key является частью модуля NGINX Stream Server Traffic Status и используется для настройки ограничений трафика для NGINX stream servers на основе заданного набора ключей. Эта директива улучшает мониторинг, позволяя администраторам определять, как собираются и формируются отчёты по статистике трафика. С помощью этой директивы можно задать уникальный идентификатор, указывающий, как должны группироваться метрики, что упрощает анализ шаблонов трафика и производительности различных серверов или сервисов, работающих в рамках NGINX.
Директива принимает два или три аргумента, которые включают конкретные ключи для отслеживания трафика. Администраторы могут задавать эти ключи в зависимости от задач анализа трафика — обычные примеры включают имя сервиса или IP клиента. Поведение директивы зависит от этих параметров: указание неверного или слишком общего ключа может привести к искажённой статистике трафика. Поэтому при развертывании этой директивы важны тщательное планирование и управление ключами.
При применении в контексте блока stream или stream server эта директива способствует проведению детального анализа трафика, помогая предотвращать возможные перегрузки за счёт упрощённого мониторинга квот трафика для отдельных сегментов нагрузки.
Пример конфига
stream {
server {
listen 12345;
server_traffic_status_limit_traffic_by_set_key client_ip;
...
}
}Убедитесь, что указанные ключи не перекрываются, если это не предусмотрено, так как это может привести к неточной статистике.
Обращайте внимание на количество отслеживаемых уникальных ключей; чрезмерное число уникальных записей может увеличить потребление памяти и время обработки.
Учтите влияние на производительность при логировании трафика для слишком большого числа ключей в условиях высокой нагрузки. Игнорирование стратегий оптимизации производительности может привести к неожиданному замедлению сервера.