стартапа? Кубернетисом и докерами не пользуемся, только свое железо и деплой из сорцев. Мне очень нравится графит и statsd, но дико бесят разные косяки имплементации и ограничения.
- Хочу в любой момент слать метрики по UDP с какого угодно устройства без авторизации и смс
- Вдобавок к пункту выше - метрики и все данные должны быть пуш а не пулл, не хочу держать список хостов и опрашивать каких-то клиентов на них
- Таким же образом нужна возможность, допустим, считать и ранжировать уникальные юзер-агенты браузеров и кверить topN прямиком из Графаны
- Для логов фуллекст индексы не нужны, наверное хватит Loki или его альтернативы - плюс в том что оно хорошо с Графаной интегрировано. Может есть годный софт который будет хранить и логи и метрики сразу?
Раньше настраивал statsd с bioyino+clickhouse+grafana, но ограничения графита не нравятся, вот.
Слать или скрейпить - принципиально?
Попробуйте писать из statsd в victoriametrics. Она намного эффективнее жмет графит-данные по сравнению с другими бэкендами для хранения графит-данных. См. https://victoriametrics.com/blog/features-roundup-2021/
Опечатка на странице kafaka
спасибо, исправим😊
А можешь рассказать про косяки имплементации и ограничения в графите?
Насчет имплементации - проблема не в bioyino наверное а в прослойке между КХ и Графаной. Квери тегов однажды сломалась, апи не возвращает подсказок о возможных тегах после определенной глубины префикса. Каких-то функций графитовых не хватает или оварлоадов существующих, не помню уже каких, но без них сильно много нужно было костылить. Были проблемы с правилами роллапа еще, оказалось что помимо кх, об этих правилах должен знать bioyino и прослойка между графаной и КХ. И просто наблюдение насчет схемы внутри КХ - CamelCase в именах таблиц это неправильно) А насчет ограничений графита, у меня одна мечта - прямиком из кода отправлять метрики по UDP с текстовыми значениями и кверить их в виде таблицы из Графаны: stats.incr('user.action.signin', 'zuck@chanzuckerberg.com'). Часто достаточно подобное писать в аудит лог в обычной рдбмс и оттуда же кверить, но мы много кравлим и хотелось бы следить за статами по каждому спарсенному проперти чтоб вовремя детектить когда что-то отваливается. Теги не подходят тк очень сильно раздуются сразу несколько таблиц, а писать такое в реляционную бд очень дорого. Интересно, а Кликхауз умеет сжимать колонки со стрингами? К примеру если стриги повторяются, то очень сгодилось бы сжатие по словарю (ака fkeys для которых теги и предназначены). Или даже хеширование стрингов овер определенной длины + словарь. Или может в Виктории или InfluxDB такое предусмотрено?
Кликхаус умеет сжимать колонки со строками - погуглите по LowCardinality ClickHouse Вм хранит строковые тэги отдельно от числовых значений метрик. Тэги сохраняются один раз для любого количества значений, поэтому они не требуют дополнительное место на диске
Обсуждают сегодня