
James
21.04.2017
13:34:55
хей пипл. есть тут те кто юзает Datadog?
хочу алерты накрутить
чет туплю

Roman
21.04.2017
13:47:55
Там ж вкладочка для алертов насколько помню

Google

Roman
21.04.2017
13:48:17
Метрика, Трешхолд, кого алертить

James
21.04.2017
15:07:42
ага есть там такое
спс

Александр
24.04.2017
06:44:11
Ребят, а как подсчитать количество метрик(определенной метрики) и вывести это дело, в графане

Vladimir
24.04.2017
06:47:45

Александр
24.04.2017
06:49:14
Ага, спасибо, гляну.


Alexander
24.04.2017
08:05:51
Здравствуйте у меня есть пара вопросов по метрикам и не совсем, но близким.
По метрикам: есть продукт в нём посылается запрос, который обрабатывается в n других executabla-х,
пока расположенных локально, но в ближайшем будущем, которые будут разнесены;
каждый запрос характеризуется n параметрами, типа юзера, и нескольких id. При обработке добавляются
новые, типа размера графа при обработке, кучи таймингов обработки.
Вопрос, куда читать, как правильно и эффективно собирать данные по таким запросам, так чтобы потом
метрики можно было собрать в одном месте и сделать отчеты. При этом часть "тегов"/метрик могут собираться
в разных executable.
Этот вопрос в основном про то, куда читать, как это делать правильно, т.к. вопрос сейчас нечеткий?
И второй, близкий: у нас есть тесты, unit и интеграционные, с них собираются метрики (те же что выше)
плюс результаты микробенчмарков. Если с метриками все ясно, то, что делать микробенчмарками т.к.
хотелось бы собирать raw data от всех запусков и уже далее вычислять интересные вещи такие как
линейную регрессию по данным, персентили и т.п. Сейчас используется elastic search stack + kibana для
выводов, но это как-то печально, т.к. непонтяно как считать все интересные вещи.
В общем тут вопрос, правильный ли вообще путь и на какие технологии стоит смотреть?


Vladimir
24.04.2017
08:09:29
Здравствуйте у меня есть пара вопросов по метрикам и не совсем, но близким.
По метрикам: есть продукт в нём посылается запрос, который обрабатывается в n других executabla-х,
пока расположенных локально, но в ближайшем будущем, которые будут разнесены;
каждый запрос характеризуется n параметрами, типа юзера, и нескольких id. При обработке добавляются
новые, типа размера графа при обработке, кучи таймингов обработки.
Вопрос, куда читать, как правильно и эффективно собирать данные по таким запросам, так чтобы потом
метрики можно было собрать в одном месте и сделать отчеты. При этом часть "тегов"/метрик могут собираться
в разных executable.
Этот вопрос в основном про то, куда читать, как это делать правильно, т.к. вопрос сейчас нечеткий?
И второй, близкий: у нас есть тесты, unit и интеграционные, с них собираются метрики (те же что выше)
плюс результаты микробенчмарков. Если с метриками все ясно, то, что делать микробенчмарками т.к.
хотелось бы собирать raw data от всех запусков и уже далее вычислять интересные вещи такие как
линейную регрессию по данным, персентили и т.п. Сейчас используется elastic search stack + kibana для
выводов, но это как-то печально, т.к. непонтяно как считать все интересные вещи.
В общем тут вопрос, правильный ли вообще путь и на какие технологии стоит смотреть?
1. Звучит как хорошая сфера применения opentracing
В любой из реализаций
@qnikst кстати привет, не ожидал тебя в ТГ увидеть
но возвращаясь к теме - http://opentracing.io/ я про это, в одной из его реализаций - кажется что вы уже его частично переизобрели. Но плюс конкретно этой штуки - что есть уже базы и дашборды под него
как раз реализующие все это удобно
про второе - выбираешь любую базу под аналитику и пишешь туда, потом строишь. Кажется что будет веселее всего

Google

Alexander
24.04.2017
08:13:12
угу, прикольно, читаю спеку сейчас, т.к. либу для языка писать придётся

Vladimir
24.04.2017
08:13:23
там есть либы под все популярное помоему.

Alexander
24.04.2017
08:13:33
haskell =)

Александр
24.04.2017
08:13:43
O_o

Alexander
24.04.2017
08:13:51
можно байндинги к плюсам писать, конечно
но лучше сначала прочитать спеку, может проще самим запилить, будет полезная либа

Vladimir
24.04.2017
08:16:12
@qnikst про первое - для разовых отчетов и не очень долгого хранения сойдет в общем даже Elasticsearch и отчеты в кибане )
просто работать будет медленно
а какой-нибудь зипкин будет намного веселее.

Alexander
24.04.2017
08:16:40
первое - для live метрик и слежения за системой

Vladimir
24.04.2017
08:17:11

Alexander
24.04.2017
08:17:23
правда перспективе, в ближайший месяц будет как отчет для поиска регрессий

Vladimir
24.04.2017
08:17:54

Alexander
24.04.2017
08:18:02
в идеале мы заинтересованы, чтобы не изобретать своё : ]
так отлично, теперь у меня есть много ключевых слов


Magistr
24.04.2017
08:25:40
Здравствуйте у меня есть пара вопросов по метрикам и не совсем, но близким.
По метрикам: есть продукт в нём посылается запрос, который обрабатывается в n других executabla-х,
пока расположенных локально, но в ближайшем будущем, которые будут разнесены;
каждый запрос характеризуется n параметрами, типа юзера, и нескольких id. При обработке добавляются
новые, типа размера графа при обработке, кучи таймингов обработки.
Вопрос, куда читать, как правильно и эффективно собирать данные по таким запросам, так чтобы потом
метрики можно было собрать в одном месте и сделать отчеты. При этом часть "тегов"/метрик могут собираться
в разных executable.
Этот вопрос в основном про то, куда читать, как это делать правильно, т.к. вопрос сейчас нечеткий?
И второй, близкий: у нас есть тесты, unit и интеграционные, с них собираются метрики (те же что выше)
плюс результаты микробенчмарков. Если с метриками все ясно, то, что делать микробенчмарками т.к.
хотелось бы собирать raw data от всех запусков и уже далее вычислять интересные вещи такие как
линейную регрессию по данным, персентили и т.п. Сейчас используется elastic search stack + kibana для
выводов, но это как-то печально, т.к. непонтяно как считать все интересные вещи.
В общем тут вопрос, правильный ли вообще путь и на какие технологии стоит смотреть?
о ты наконец добрался сюда )


Alexander
24.04.2017
08:25:52
я тут давно, но в режиме R/O был

Старый
24.04.2017
09:10:14
что кроме эластика ещё для кибаны годится?
менее прожорливое

Google

Vladimir
24.04.2017
09:25:54
@erzentd сюрприз, но кибану пилят те же чуваки что и эластик и по их же словам кибана в ядре завязана на ES чуть более чем полностью

Dmitry
24.04.2017
09:41:04
Я щас как раз ковыряюсь в opentracing и что-то не едет.

Vladimir
24.04.2017
09:49:35

Dmitry
24.04.2017
09:50:14
Да там столько всего много наплодили... :)
Ехал трейсер через трейсер. Вот с ходу непонятно. Чем собсно писать из Python в Zipkin.
Тьма примеров и все через какое-то lightstep трейсер. Нет, я конечно рад за собирающийся зарабатывать стартап, но чем в итоге то кормить локальный zipkin :)

Pavel
24.04.2017
09:56:40
опентрейсер?
посмотрел приезенташки, все равно ничерта не ясно)

Vladimir
24.04.2017
10:01:02
опентрейсер?
Попытка сделать единый стандарт на трейсинг запросов
на базе gRPC'шнего трейса
опентрейсер?
http://opentracing.io/documentation/pages/quick-start.html лучше с этого начинать смотреть кмк

Vladimir
24.04.2017
10:03:15
я пока толком не игрался, знаю что у нас народ под java юзает

Pavel
24.04.2017
10:07:40
кстати, недавно запретили церковь свидетелей иеговы
я бы аккуратнее был с названием чатика теперь %)

Виталий
24.04.2017
10:08:38
метрики изымут в пользу государства?

Pavel
24.04.2017
10:08:50
(запрещенная в РФ группа Телеграм)
и вот это заставят приписывать же

Старый
24.04.2017
10:09:43

Dmitry
24.04.2017
10:15:11

Google

Vladimir
24.04.2017
10:23:18
https://github.com/opentracing/opentracing-python это вот разве не оно?
минус конечно в том что на питоне без поддержки фреймворка оно выглядит довольно так себе
то есть нужно делать обертки над обработкой запросов и пр.
и начать передавать где-то контекст из трейсера


Dmitry
24.04.2017
10:30:27
https://github.com/opentracing/opentracing-python это вот разве не оно?
я умею гуглить, но да - это не оно :))
там прямо сверху написано:
Future versions will include a reference implementation utilizing an abstract Recorder interface, as well as a Zipkin-compatible Tracer.
То есть именно Tracer у них и нет. Почти во всех примерах или ...
# can be any valid OpenTracing tracer implementation
tracer = whatever
... или
import lightstep.tracer
tracer = lightstep.tracer.init_tracer(group_name="fuck", access_token="{lightstep_token}")
ну как бы я писал выше, рад за lightstep, но мне бы в Zipkin :D
В общем, там есть что поковырять, конечно. В конце концов, как выше написано, "сначала прочитать спеку и запилить самим" :))
Но пока - не едет.

Admin
ERROR: S client not available

Алексей
24.04.2017
10:59:58
https://www.influxdata.com/prometheus-influxdb-thoughts/

Vladimir
24.04.2017
11:38:00

Dmitry
24.04.2017
11:40:30

Alexander
24.04.2017
14:49:43
@Civiloid а для сборки всяких результатов бенчмарков и т.п. сразу своё пилить, или что готовое-полуготовое брать.
У меня там примерно такая ситуация, есть например бенчмарк, он запускается N раз, каждый раз с увеличивающимся числом итераций,
в итоге есть пачка [(n, time)]. Которые нужно куда-нить положить, уметь показывать графиком, посчитать регрессию и вывести
её как в summary. И отдельно строить график обработанных величин.
Сейчас это делается в кибане по упрощенной модели, там просто n раз пускается тест при фиксированном количестве итераций,
поэтому все суммы и персентили легко считаются, но как в новую модель затащить неясно.
Плюс не удобно, что там все на timeline причепленно, поэтому неудобно смотреть.


Vladimir
24.04.2017
14:54:25
@Civiloid а для сборки всяких результатов бенчмарков и т.п. сразу своё пилить, или что готовое-полуготовое брать.
У меня там примерно такая ситуация, есть например бенчмарк, он запускается N раз, каждый раз с увеличивающимся числом итераций,
в итоге есть пачка [(n, time)]. Которые нужно куда-нить положить, уметь показывать графиком, посчитать регрессию и вывести
её как в summary. И отдельно строить график обработанных величин.
Сейчас это делается в кибане по упрощенной модели, там просто n раз пускается тест при фиксированном количестве итераций,
поэтому все суммы и персентили легко считаются, но как в новую модель затащить неясно.
Плюс не удобно, что там все на timeline причепленно, поэтому неудобно смотреть.
ну кажется что столбцовая база и redash позволят сделать больше. Но может я и не совсем понимаю что вы хотите
может быть redash + grafana


Alexander
24.04.2017
15:06:59
а кто-нибудь сопрягал alerta и alertmanager? что-то не выходит каменый цветок
webhook настроил как тут примерно (у меня /api префикс):
https://github.com/alerta/prometheus-config/blob/master/alertmanager.yml
в логах
Apr 24 15:07:08 ip-172-31-18-127 alertmanager[15020]: time="2017-04-24T15:07:08Z" level=error msg="Notify for 3 alerts failed: Cancelling notify retry due to unrecoverable error: unexpected status code 404" source="dispatch.go:246"
курл из консоли с -X POST работает

Ivan
24.04.2017
15:08:45
А как бы заббикс без костылей научить понимать JSON в ответе от REST API?

Евгений
24.04.2017
15:15:33

Ivan
24.04.2017
15:15:44

Google

Alexander
24.04.2017
15:20:17
гадский алертменеджер в ошибках мало контекста даёт даже в дебаг режиме – отстой

Евгений
24.04.2017
15:25:09

Алексей
24.04.2017
15:26:06
у алерты // плохо

Alexander
24.04.2017
15:26:34

Евгений
24.04.2017
15:26:36

Alexander
24.04.2017
15:26:37
http://alerta.io/

Евгений
24.04.2017
15:26:53

Alexander
24.04.2017
15:28:47
дашборда с алертами и api чтобы их туда засунуть/вынуть
ща проверю
блин, гадский yaml
кавычки!

Евгений
24.04.2017
15:43:32

Alexander
24.04.2017
15:44:15
алертменеджер минималистичен и заточен на менеджмент больше, а не на визуализацию

Евгений
24.04.2017
15:44:31
понял, спасибо

Alexander
24.04.2017
15:44:50
у меня сейчас алерта – это один из роутов куда летят сообщения

Евгений
24.04.2017
15:45:10
ааа, типо под хистори