задерживать пакеты на определенный промежуток времени (в пределах 5 минут)
алгоритм такой: отправляем куда-нибудь пакет, забываем про него и когда обратно получаем посылаем дальше
соответственно, хочу подобрать подходящую shared базу или очередь которая может хранить большой стрим на коротком промежутке, всплывают какие-нибудь названия в голове при этом? потому что я ничего прям подходящего-подходящего сразу не могу придумать
(это в рамках сабжа если что :)
алгоритм не очень понятен :) Зачем задерживать statsd пакеты до 5 минут в проксе? Если все-таки нужно, то самый нормальный и быстрый вариант - использовать файлы для хранения пакетов перед отправкой дальше. Этот вариант гарантирует сохранность неотправленных пакетов при перезагрузке прокси. Только хранить не в одном файле, а в наборе файлов ограниченной длины, чтобы можно было проще удалять старые файлы после отправки из них всех пакетов.
curl prometheus_endpoint/metrics.json > /tmp/metrics.json && sleep 300 && cat /tmp/metrics.json | exporter я написал за тебя
Обсуждают сегодня