Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README.md #3

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Update README.md #3

wants to merge 3 commits into from

Conversation

SirEdvin
Copy link

Немного про пром

Немного про пром
README.md Outdated
A: Ну вот вкратце:

1. Очень большие проблемы с хранением данных в долгосрочном периоде. Какие-то варианты есть, но они все в итоге заставляют или использовать пром исключительно как сборщик + оповещалку, или строить дашборды по два раза. remote read протокол полное днище, потому что подразумевает вычисление всех функций на стороне самого прома;
2. Алертинг в начинающей стадии. Нужно городить костыли или колхозы для чего-то, что можно просто найти в другой экосистеме. То есть вопрос даже не в продвинутых фичах типа "Сделай что-то по алерту", вопрос в подавлениях, условиях роутинга, разделение на команды и прочей приятной мелочи. Значительно проще тупо отдавать все стороннему решению (например, Алерта, Инсигне и т.д.);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

icinga.

README.md Outdated
3. Очень, то есть ОЧЕНЬ чувствителен к корректному использованию тегов. Решили запихнуть url path в тег? Ну, вас ждет неприятный сюрприз, последствие которого будут еще очень долго вам аукатся;
4. Pull модель. Даже не так, особенная pull модель, которая не обнуляет данные после их получения. Помните пункт 3? Ну так вот, айда перезапускать все сервисы подряд;
5. Офигенный подход к агрегированию метрик для нескольких процессов в клиентских либах (для веб приложений написанных на python, js, php или тех, кто предпочитает 12factor) приводит к тому, что даже после перезапуска сервисы могут подхватить из какого-то внешнего источника (redis, файлы) все эти метрики и начать свистопляску заново;
6. Очень нордическая модель данных. Вам может показатся, что она какая-то кривая, но, обычно, вам расскажут, что вы неправы. Без вариантов;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

very german, not nordic.

8. Хотите HA? Ну тогда просто ставьте два независимых прома и пусть они собирают данные независимо. Как жить, если между ними будут расхождения? Ну, открывайте томик мат. статистики;
9. Вы хотите защитить метрики от условного похищения, поставить basic auth или даже tls security? Ну .... Не хотите. Пока;
10. Нет вебморды для редактирования, нет никакого разделения по ролям внутри - все ентерпрайз фичи делаются только через отдельные инстанты. Это к тому, что если вам нужно разграничивать видимость метрик внутри прома, то ... вам не нужно;
11. У вас нет никакого инструмента управлениями конфигураций (в духе Ansible), на серверах не бороздят просторы консулы, куберы и прочая штука? Ну .... вперед писать длинные портянки файлов вручную, так как идеология прома подразумевает по отдельному экспортеру на сервис;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if you have no cms then you will suffer by definition

some update after review
Update
Q: Да как так?
A: Ну вот вкратце:

1. Очень большие проблемы с хранением данных в долгосрочном периоде. Какие-то варианты есть, но они все в итоге заставляют или использовать пром исключительно как сборщик + оповещалку, или строить дашборды по два раза. remote read протокол полное днище, потому что подразумевает вычисление всех функций на стороне самого прома;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"что требует вытянуть все данные из ремоут стораджа, это может быть слишком много"

README.md Outdated
A: Ну вот вкратце:

1. Очень большие проблемы с хранением данных в долгосрочном периоде. Какие-то варианты есть, но они все в итоге заставляют или использовать пром исключительно как сборщик + оповещалку, или строить дашборды по два раза. remote read протокол полное днище, потому что подразумевает вычисление всех функций на стороне самого прома;
2. Алертинг в начинающей стадии. Нужно городить костыли или колхозы для чего-то, что можно просто найти в другой экосистеме. То есть вопрос даже не в продвинутых фичах типа "Сделай что-то по алерту", вопрос в подавлениях, условиях роутинга, разделение на команды и прочей приятной мелочи. Значительно проще тупо отдавать все стороннему решению (например, Алерта, Инсигне и т.д.);
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не могу сформировать из этого проблему

1. Очень большие проблемы с хранением данных в долгосрочном периоде. Какие-то варианты есть, но они все в итоге заставляют или использовать пром исключительно как сборщик + оповещалку, или строить дашборды по два раза. remote read протокол полное днище, потому что подразумевает вычисление всех функций на стороне самого прома;
2. Алертинг в начинающей стадии. Нужно городить костыли или колхозы для чего-то, что можно просто найти в другой экосистеме. То есть вопрос даже не в продвинутых фичах типа "Сделай что-то по алерту", вопрос в подавлениях, условиях роутинга, разделение на команды и прочей приятной мелочи. Значительно проще тупо отдавать все стороннему решению (например, Алерта, Инсигне и т.д.);
3. Очень, то есть ОЧЕНЬ чувствителен к корректному использованию тегов. Решили запихнуть url path в тег? Ну, вас ждет неприятный сюрприз, последствие которого будут еще очень долго вам аукатся;
4. Pull модель. Даже не так, особенная pull модель, которая не обнуляет данные после их получения. Помните пункт 3? Ну так вот, айда перезапускать все сервисы подряд;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не понимаю что тут написано

2. Алертинг в начинающей стадии. Нужно городить костыли или колхозы для чего-то, что можно просто найти в другой экосистеме. То есть вопрос даже не в продвинутых фичах типа "Сделай что-то по алерту", вопрос в подавлениях, условиях роутинга, разделение на команды и прочей приятной мелочи. Значительно проще тупо отдавать все стороннему решению (например, Алерта, Инсигне и т.д.);
3. Очень, то есть ОЧЕНЬ чувствителен к корректному использованию тегов. Решили запихнуть url path в тег? Ну, вас ждет неприятный сюрприз, последствие которого будут еще очень долго вам аукатся;
4. Pull модель. Даже не так, особенная pull модель, которая не обнуляет данные после их получения. Помните пункт 3? Ну так вот, айда перезапускать все сервисы подряд;
5. Офигенный подход к агрегированию метрик для нескольких процессов в клиентских либах (для веб приложений написанных на python, js, php или тех, кто предпочитает 12factor) приводит к тому, что даже после перезапуска сервисы могут подхватить из какого-то внешнего источника (redis, файлы) все эти метрики и начать свистопляску заново;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

и снова не ясен кейс :(

5. Офигенный подход к агрегированию метрик для нескольких процессов в клиентских либах (для веб приложений написанных на python, js, php или тех, кто предпочитает 12factor) приводит к тому, что даже после перезапуска сервисы могут подхватить из какого-то внешнего источника (redis, файлы) все эти метрики и начать свистопляску заново;
6. Очень нордическая модель данных. Вам может показатся, что она какая-то кривая, но, обычно, вам расскажут, что вы неправы. Без вариантов;
7. Нет никаких шансов на внятные расширения внутри самого языка. Новые фичи так же внедряются исключительно для цели служения нордической модели данных. Хотите что-то классное? Вас ждет remote read/write протоколы и много страдания, как всегда;
8. Хотите HA? Ну тогда просто ставьте два независимых прома и пусть они собирают данные независимо. Как жить, если между ними будут расхождения? Ну, открывайте томик мат. статистики;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

зачем вы его закрывали :( но да согласен

7. Нет никаких шансов на внятные расширения внутри самого языка. Новые фичи так же внедряются исключительно для цели служения нордической модели данных. Хотите что-то классное? Вас ждет remote read/write протоколы и много страдания, как всегда;
8. Хотите HA? Ну тогда просто ставьте два независимых прома и пусть они собирают данные независимо. Как жить, если между ними будут расхождения? Ну, открывайте томик мат. статистики;
9. Вы хотите защитить метрики от условного похищения, поставить basic auth или даже tls security? Ну .... Не хотите. Пока;
10. Нет вебморды для редактирования, нет никакого разделения по ролям внутри - все ентерпрайз фичи делаются только через отдельные инстанты. Это к тому, что если вам нужно разграничивать видимость метрик внутри прома, то ... вам не нужно;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ну тоже костылится но согласен

8. Хотите HA? Ну тогда просто ставьте два независимых прома и пусть они собирают данные независимо. Как жить, если между ними будут расхождения? Ну, открывайте томик мат. статистики;
9. Вы хотите защитить метрики от условного похищения, поставить basic auth или даже tls security? Ну .... Не хотите. Пока;
10. Нет вебморды для редактирования, нет никакого разделения по ролям внутри - все ентерпрайз фичи делаются только через отдельные инстанты. Это к тому, что если вам нужно разграничивать видимость метрик внутри прома, то ... вам не нужно;
11. У вас нет никакого инструмента управлениями конфигураций (в духе Ansible), на серверах не бороздят просторы консулы, куберы и прочая штука? Ну .... вперед писать длинные портянки файлов вручную, так как идеология прома подразумевает по отдельному экспортеру на сервис;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

считаю что это скорее в плюсы

Ах да, из всяких мелочей:
* Очень важно помнить, что вы работаете с временным рядами. И потеря части точек - это не проблема
* Пром не попадает в ваш use case? У вас даже нет шансов его докрутить до какой-то кондиции
* Stateless алертинг. Перезапустили пром? Ну вот все ваши активные алерты и тю-тю. Для алертов с большими for это обычно очень приятно. Говорят с поздних версиях исправлено
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

это не правда.

* Пром не попадает в ваш use case? У вас даже нет шансов его докрутить до какой-то кондиции
* Stateless алертинг. Перезапустили пром? Ну вот все ваши активные алерты и тю-тю. Для алертов с большими for это обычно очень приятно. Говорят с поздних версиях исправлено
* Что бы работать с blackbox expoter нужно убить в себе программиста.
* Вам может показатся, что в какой-то момент вам будет нужен pushgateway. На самом деле, это еще одна ловушка для пытливых умов, которые ломают головы, зачем нужно это чудо после существования textcollector в node_exporter и statsd_expoter.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

либо люди читают доку и они прочитают этот фак и первый абзац доки пушгейтвея, либо не прочитают ни то ни другое.


* Нет возможность вешать Action на Alarm'ы.
* Из коробки нет долговременного хранилища. Есть множественные попытки сделать их через remote read/write.
* Плохо подходит для новичков. Предполагает, что git и merge request являются большей ценностью чем возможность управлять системой через веб интерфейс.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

зачем это всё в минус? оно всё так и осталось

5. Офигенный подход к агрегированию метрик для нескольких процессов в клиентских либах (для веб приложений написанных на python, js, php или тех, кто предпочитает 12factor) приводит к тому, что даже после перезапуска сервисы могут подхватить из какого-то внешнего источника (redis, файлы) все эти метрики и начать свистопляску заново;
6. Очень нордическая модель данных. Вам может показатся, что она какая-то кривая, но, обычно, вам расскажут, что вы неправы. Без вариантов;
7. Нет никаких шансов на внятные расширения внутри самого языка. Новые фичи так же внедряются исключительно для цели служения нордической модели данных. Хотите что-то классное? Вас ждет remote read/write протоколы и много страдания, как всегда;
8. Хотите HA? Ну тогда просто ставьте два независимых прома и пусть они собирают данные независимо. Как жить, если между ними будут расхождения? Ну, открывайте томик мат. статистики;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Про шардирование ещё:
Отсутствие шардирования. Надеяться на то, что ваши метрики смогут эффективно балансироваться между серверами, равномерно потребляя место на диске и память, бесполезно. Придётся поднять несколько инстансов и собирать на них разные данные

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants