Мы хотели следить за общим качеством сайта. Первое, что пришло в голову — отслеживать фон ошибок. Сколько пользователей столкнулись с ними? Как релиз повлиял на это?
У нас уже был Rollbar, куда писались все ошибки. Добавили в экспортере запрос к API, чтобы получить число ошибок и стали отдавать это в Prometheus.
А потом поняли, что получившийся график очень сильно колеблется. Во-первых, ночью меньше людей пользуются нашим сайтом, а во-вторых — коронокризис, люди прибегают волнами.
Короче, этот график показывал по большей части посещаемость сайта.
Решили нормировать его на число посещений. У нас уже используется snowplow, как транспорт аналитических событий. Среди них, конечно, было событие просмотра страницы. То что нужно.
Добавили чтение кафка-стрима, парсинг сообщений (отдельный квест распарсить формат snowplow), учет числа посещений. И потом средствами Grafana поделили одно на другое.
Получилось как-то так
Потом еще много допиливали этот график, но подробности, кмк, уже не так интересны.
Игорь Камышев