171 похожих чатов

Коллеги ну поделитесь большой тайной - что используете на клиенте

(имеется в виду сервисах): гистограммы или саммариз?
у меня например разброс размеров ответов и латенси очень большой и заранее описать это бакетами определенных размеров не могу - попаду пальцем в небо
саммариз вроде сами все считают и уже в готовом виде - но сколько за это придется заплатить производительностью сервиса?

18 ответов

23 просмотра

никто кроме тебя не будет бенчмаркать твой сервис

я не понял как это связано с вопросом? я вроде бы нигде и не отказывался! 😳

извиняюсь если есть сомнения на тему производительности снятия метрик, то только ты сам можешь попробовать варианты и выбрать тот, который нравится больше

См. https://valyala.medium.com/improving-histogram-usability-for-prometheus-and-grafana-bc7e5df0e350

спасибо - почитаю

статья об оптимизации создания и хранения гистограмм в victoriaMetrics - пока нет возможности изучать и спользовать ее хотелось бы понять что на практике лучше использовать - гистограммы или саммариз?

На практике все зависит от желаемого результата. Если важно знать распределение значений метрики (например, если значения распределены не по нормальному закону, а имеют несколько "всплесков" и эти "всплески" могут перемещаться по шкале значений с течением времени), то лучше использовать гистограммы с бакетами, покрывающими с хорошим разрешением большинство возможных значений метрики. Если же важно знать максимальное значение метрики для какого-то процента измерений (например, максимальное время ответа для 95% пользователей aka 95-й персентиль), то тогда используйте summary.

спасибо за подробное разъяснение! а вот реальными примерами про гистограммы можно? толковых материалов по реальным применениям мало - поэтому сложно сориентироваться когда их применять

Обычно гистограммы используют вместо саммари, если нужна возможность объединения гистограмм по нескольким метрикам. Например, у вас есть кластер микросервисов, и вы измеряете время выполнения запроса на каждом микросервисе. Если вам нужно подсчитать время выполнения запроса по всем микросервисам (минимальное, максимальное, какой-нибудь квантиль), либо построить heatmap по времени выполнения запроса по всем микросервисам, то тут без гисторграмм не обойтись, т.к. квантили по отдельным сервисам нельзя объединять. Гистограммы же легко объединять путем сложения бакетов. После объединения можно легко подсчитать нужные квантили или посторить heatmap. Единственный момент - объединение работает только для гистограмм, содержащих одинаковый набор бакетов с одинаковыми границами.

вроде и на русском, но понятнее не становится :) квантили бакеты :)

👌ага вот где собака порылась! я по простоте своей решил все саммариз покрыть и сводить их потом в одну диаграмму - а оно то не сводимое! спасибо!такого нигде не читал Подскажите еще одну вещь - насколько затратно потом считать все квантили по гистограммам - в доке пугают что это может стать узким местом в мониторинге Правильно ли я понимаю что гистограммы лучше использовать для измерения времени? (я например не могу себе даже представить какие и сколько корзин я должен описать для размеров запросов/ответов - настолько it depends of user data)

https://prometheus.io/docs/practices/histograms/#errors-of-quantile-estimation попробуй тут на английском

это я уже раза 3 с лупой читал! :)

понимаю. я 2 недели в голову укладывал. но после того как уложил понял что без этого вообще в мониторинге делать нечего

уговорили, сегодня с микроскопом перепрочту )

2 недели?

ну ладно ладно. месяца

Чем больше бакетов в гистограмме, тем больше накладные расходы на сбор, хранение и выборку данных, т.к. значения для каждого бакета хранятся в отдельном временном ряду, занимающем место на диске. Гистограммы можно использовать для сбора статистики по любым величинам, в т.к. времени выполнения каких-либо операций и размерам запросов/ответов. Для того, чтобы не нужно было думать про размер корзин, можно использовать т.н. hdr histograms вроде тех, что описаны в https://valyala.medium.com/improving-histogram-usability-for-prometheus-and-grafana-bc7e5df0e350

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта