J
там довольно много всего, на что нужно внимание обратить?
Возьми какой-то отдельный запрос и по нему смотри. Начинаться будет с самого токена типа RBAC: auth_context: {'token': <TokenModel (audit_id= И так далее.
J
А в начале сообщения есть request id. Типа такого: req-0f7143d6-xxxxx-xxxx и так далее Вот по нему отфильтруй лог keystone и глянь чо происходит.
rince
User 1ad98bcbb2204e1594d3ef2601cefaa3 has no access to domain default Authorization failed. The request you have made requires authentication. from : keystone.exception.Unauthorized: The request you have made requires authentication.
rince
User 1ad98bcbb2204e1594d3ef2601cefaa3 has no access to domain default Authorization failed. The request you have made requires authentication. from : keystone.exception.Unauthorized: The request you have made requires authentication.
почему-то мой юзер какой-то бесправный логинюсь я через юзера который создается в keystone-manage bootstrap
NS 🇷🇺
Коллеги, а со стеком никто не работае на Go? есть вопрос про gophercloud. https://pkg.go.dev/github.com/gophercloud/gophercloud/openstack/identity/v3/projects@v0.18.0#ListOpts.Filters - никто не подскажет, где искать все варианты фильтров?
Denis
// Filters filters the response by custom filters such as // 'name__contains=foo' Filters map[string]string `q:"-" там кто-то вмазал магию интефрейсов)
Denis
можно зайти хитро, почитать тесты и посмтреть где эта структура используется, вероятно там будут ответы. Скорее всего ответ в месте где используют, ведь судя по комментарию они из строки фильтр берут
NS 🇷🇺
можно зайти хитро, почитать тесты и посмтреть где эта структура используется, вероятно там будут ответы. Скорее всего ответ в месте где используют, ведь судя по комментарию они из строки фильтр берут
name__contains то вот понятно, отфильтровать по именам содержащим, а вот что можно еще кроме __contains использовать, совсем не понятно. Да с тестами это тема, если конечно они ими покрыли этот кейс =)
Denis
https://github.com/gophercloud/gophercloud/blob/b99817b08b69f18f1ac066fb41d4b90e4f2af396/openstack/identity/v3/projects/requests.go#L60
Denis
походу вот)
NS 🇷🇺
походу вот)
не совсем =)
Denis
теперь ищи как туда попадают аргументы в которых фильрры передали
NS 🇷🇺
может по каждому полю можно ?
вопрос именно в ключевых словах для фильтров
Denis
если это вводит пользователь, то все, концов не найдешь)
Denis
а может по пути встретишь другие структуры или валидаторы
Denis
return "", InvalidListFilter{FilterName: k}
Denis
например выглядит привлекательно)
Denis
https://github.com/gophercloud/gophercloud/blob/b99817b08b69f18f1ac066fb41d4b90e4f2af396/openstack/identity/v3/projects/errors.go#L13 мде
Denis
смирись, это секрет
NS 🇷🇺
например выглядит привлекательно)
да и там "Invalid filter name [%s]: it must be in format of NAME__COMPARATOR", а вот сука где варианты COMPARATOR взять )
Denis
а епта
Denis
так нету
Denis
https://github.com/gophercloud/gophercloud/blob/b99817b08b69f18f1ac066fb41d4b90e4f2af396/openstack/identity/v3/projects/requests.go#L60
во смари внимательно ^ for k, v := range opts.Filters { побежали в цикле по фильтрам из opts i := strings.Index(k, "__") разобрали на 2 части params.Add(k, v) аппендят в params разобарнные 2 переменные q = &url.URL{RawQuery: params.Encode()} - и пиздец, улетело в интернет, а там будь, что будет
Denis
видимо читать доку владельца сервиса, куда улетел запрос)
NS 🇷🇺
😄
Aleksey
Парам парам пам
Vyacheslav
Касса с компом же
Умный, да? Держи счёты. :) не может тетя Маша быть программистом :)))
Ilyas
Умный, да? Держи счёты. :) не может тетя Маша быть программистом :)))
Интересно, я не могу среди своих знакомых и родственников никого вспомнить, кто бы не за компом сидел на работе
Ilyas
Кассиры с терминалами и телефонами/планшетами
Vyacheslav
Кассиры с терминалами и телефонами/планшетами
Картошка в маке делается без компа ^_^
Ilyas
Картошка в маке делается без компа ^_^
Там и человек не особо нужен
Vyacheslav
Там и человек не особо нужен
Да, не то что на урановых рудниках :)
Ilyas
Да, не то что на урановых рудниках :)
И там тоже роботы были бы кстати
Ilyas
Я видел асфальт кладут люди
Ilyas
Чтобы по ним тесла роботы катались
Vyacheslav
Овец пасут собаки…
Я и твой кот
Нет
Может стоит попробовать? Меньше разброда и шатаний между cpu и numa нодами будет, и всё такое.
Ilyas
Ахаха
Vyacheslav
Что-то сложно представить действительно
Vyacheslav
Может стоит попробовать? Меньше разброда и шатаний между cpu и numa нодами будет, и всё такое.
Пока вопрос именно как заметить что клиентам не очень по метрикам с гипера
Илья | 😶☮️🐸
Илья | 😶☮️🐸
ну чтоб они раз в минуту пушили или когда steal time будет выше N значения
Vyacheslav
подсаживать внутрь инстанса своего агента ?
Я говорил - есть zabbix, увы там что-то быстро проанализировать на 75к vm не реально
Vyacheslav
Но для каждой vm steal time есть
Denis
или заббикс 1.2?
Vyacheslav
Хотя бы clickhouse но увы и ах
Vyacheslav
^^
Там сопровождение заббикса резко против таких запросов, самый реалистичный вариант с гипера собирать что-то
Ilyas
А что значит клиентам плохо?
Denis
cgroups с процессов qemu-kvm:)
Denis
запрещенная netdata например
Denis
в графану можно отправить кстати) если она не под санкциями
Vyacheslav
Ilyas
Я подозревал...
Vyacheslav
Я подозревал...
Пока это steal time, но никто не знает порог значения
Vyacheslav
в графану можно отправить кстати) если она не под санкциями
Там 502 ошибка когда больше 1000 точек просишь из заббикс :))
Ilyas
Можно измерить среднее по больнице подсадив на каждую железку свою VM и оттуда собирать
Denis
nginx max proxy timeout
Vyacheslav
Можно измерить среднее по больнице подсадив на каждую железку свою VM и оттуда собирать
Собирать что? Если там не будет нагрузки - не показательно же
Denis
вывинчивай в 600 или 900
Denis
и "вэпоху")
Vyacheslav
вывинчивай в 600 или 900
Не мы сопровождаем
Vyacheslav
:))
Ilyas
Собирать что? Если там не будет нагрузки - не показательно же
Дергать какой-нибудь презентованый эндпоинт или гонять перформанс тесты
Vyacheslav
Надо свой делать мониторинг внутренний
Denis
Не мы сопровождаем
заводи задачу значит, пусть 2 года делают, хули)
Denis
промик вот это вот свя петушинная фабрика моднявая слюнявая
Vyacheslav
Да ясно - в vm гироскутер не поставить - только на гипер