@metrics_ru

Страница 186 из 681
Sergey
17.06.2017
22:04:58
{host="11"} {host="21"} кардиналити 2
спасибо. на мой вкус выходит, что здесь достаточно простого слова "количество"

Алексей
17.06.2017
22:05:09
:)

количество метрик не кардиналити

кардиналити это полный набор всех вариатов тегов

Google
Sergey
17.06.2017
22:09:32
мощность множества. к сожалению, соответствующая статья в википедии представляет собой дикий неудобоваримый кирпич.

Алексей
17.06.2017
22:10:12
да. у парней из инфлюксдата есть наудивление толковая девочка пиарщик которая как то рассказывала что же это такое.

на понятных примерах

Sergey
17.06.2017
22:11:52
вполне возможно. но было бы больше толка, если б они наняли ещё и годных программистов.

Maxim
18.06.2017
08:54:58
коллеги, а чего такое внезапно с телеграфом случилось?

он зачем-то стал все слеши в подчеркивания превращать



вот так

Алексей
18.06.2017
09:08:31
хм. у меня нет

1,3,2

Maxim
18.06.2017
09:08:51
$ dpkg -l|grep teleg ii telegraf 1.3.2-1 amd64 Plugin-driven server agent for reporting metrics into InfluxDB.

нашел

func sanitize(value string) string { return invalidNameCharRE.ReplaceAllString(value, "_") }

Google
Maxim
18.06.2017
09:09:50
это в https://github.com/influxdata/telegraf/blob/master/plugins/outputs/prometheus_client/prometheus_client.go

вот в этом коммите: https://github.com/influxdata/telegraf/commit/949072e8dc9f000f77db70bf1daed5408d33f035

Алексей
18.06.2017
09:12:13
ага. у меня версия то 1,3,2 но телегрфа не рестартнут.

такая же бойда

Maxim
18.06.2017
09:12:26
ггг

обнимемся, бро (not gay)

Алексей
18.06.2017
09:13:05
надо снова идти к чуваку

Maxim
18.06.2017
09:13:06
чо, пойти им баг назвездеть штоле

Алексей
18.06.2017
09:13:13
и говорить что он негодяй

Maxim
18.06.2017
09:13:29
четыре дня назад все сломали

Алексей
18.06.2017
09:14:18
ой вей. это ведь в кардиналити все пойдет :(

Maxim
18.06.2017
09:14:25
ага

Алексей
18.06.2017
09:15:03
var invalidNameCharRE = regexp.MustCompile([^a-zA-Z0-9_])

маловато

Maxim
18.06.2017
09:15:27
ну надо слеш сюда добавить, да

только имя какое-то инвертированное

это же по идее validNameCharRE

не?

то есть, если я верно понял логику, то все символы, НЕ входящие в этот регексп, будут заменены на "_"

Google
Алексей
18.06.2017
09:21:49
ну в контексте использования всё верно return invalidNameCharRE.ReplaceAllString(value, "_")

Maxim
18.06.2017
09:28:07
ну ок, ладно

го - для роботов, я всегда это говорил :troll:

Алексей
18.06.2017
09:29:35
слава роботам!

Maxim
18.06.2017
09:34:51
https://github.com/influxdata/telegraf/issues/2937

Aleksey плюсуй ;)

Алексей
18.06.2017
09:38:17
ак видимо надо пересобрать с праивльным патчем

и выкатить на сервер

посмотрет ьчего еще поломалось

Maxim
18.06.2017
09:39:37
можно попробовать пулриквезднуть

бляяяяя

пидоры

Maxim
18.06.2017
09:40:47
там еще и минуса нет

все хостнеймы по пизде

ну ёбана, а...

Алексей
18.06.2017
09:42:07
вот я и говорю надо бы подумать какие еще оставить

_-./

Maxim
18.06.2017
09:42:46
а точку заекранить не надо?

Алексей
18.06.2017
09:42:55
надо конечно

Maxim
18.06.2017
09:43:20
у го ж не pcre, там свой путь какой-то

Google
Алексей
18.06.2017
09:43:32
дада. re2

Maxim
18.06.2017
09:52:42
$ ag invalidNameCharRE plugins/outputs/prometheus_client/prometheus_client.go 20:var invalidNameCharRE = regexp.MustCompile(`[^a-zA-Z0-9_]`) 171: return invalidNameCharRE.ReplaceAllString(value, "_")

отлично

оно всего в одном месте используется

lastsky
18.06.2017
09:56:36
они там ебнулись точно.

доброе утро.

Maxim
18.06.2017
10:22:44
еще и минус надо экранировать

Admin
ERROR: S client not available

Maxim
18.06.2017
10:23:49
@freeseacher var invalidNameCharRE = regexp.MustCompile(`[^a-zA-Z0-9_\-/\.]`)

https://gist.github.com/Bregor/c48505bc8cad3cd8f17c597e7c8f7c2b

$ go run sanitize.go dots__..._bucks______slashes__///_minuses__---_underscores______pluses_____

точки, минусы и слеши на месте

@freeseacher https://github.com/Bregor/telegraf/blob/master/plugins/outputs/prometheus_client/prometheus_client_test.go#L127-L148

они там специально даже в тестах минусики проверяют

казлы

то есть я боюсь, что пулриквест нихера не примут и баг закроют, как вонтфикс

Vladimir
18.06.2017
10:42:31
то есть я боюсь, что пулриквест нихера не примут и баг закроют, как вонтфикс
Я думаю если сделать ссылку на валидацию в самом Прометее.- может поправят

Maxim
18.06.2017
10:44:08
еще б найти ее там...

надо сказать, в прометее куча отдельных валидаторов для разных кейсов

инфлюксовцы совершенно явно беспалева взяли вот это: https://github.com/prometheus/prometheus/blob/master/util/strutil/strconv.go#L23

Google
Maxim
18.06.2017
10:46:29
и даже функцию sanitize слово в слово притырили из этого пакета

https://github.com/prometheus/prometheus/blob/master/util/strutil/strconv.go#L42-L44

но при этом это санитизация _лейблов_

а они применяют ее к именам метрик

не могу найти в прометее регекспа для санитизации имен метрик

@freeseacher, @Civiloid, помогайте ;)

чот походу в прометее вообще не санитизируют имена метрик

как приехали, так и берут

санитизация есть только для лейблов

либо я чего-то глобально не понимаю

опять же, в инпутах есть стандартный плагин, следящий за файлами

ничего мне не мешает в имени файла использовать двоеточие, например

телеграф заменит это на андерскор

https://github.com/influxdata/telegraf/issues/2937#issuecomment-309270989

написал пока такой каммент

но чот не уверен, что это как-то вразумит товарищей...

Andor
18.06.2017
11:24:51
Прометей принимает как есть, если парсинг не зафейлился

Посмотрите в код либы экспортера

Maxim
18.06.2017
11:26:42
но они же при этом не заменяют кучу символов на андерскоры же

Страница 186 из 681