yopp
вы чем собираете метрики?
Gor
api ввыдает enddpoint для графаны
Gor
если про api
yopp
вот такой график нужен: https://grafana.com/docs/features/panels/heatmap/#heatmap
yopp
если про api
а, это метирка запросов в апи, а не в монгу
yopp
пони
yopp
какойнибудь прометеевский экспортер?
Gor
это с api
Gor
и это с api
yopp
да, я пони уже
Gor
нет, не прометеевский экспортер. у API есть endpoint с которого прометей тянет да
Gor
формат аля nodeexxporter
yopp
эт я имел ввиду, да
yopp
добавьте туда гистограмму с шагом 100мс
yopp
и сделайте хитмап
yopp
это прямо будет освежающий график, который покажет очень много интересного :)
Gor
ок гляну в эту сторону
Gor
у меня в планах добавить экспортер профайлинга запроса
Gor
чтоб можно было при фильтре в графане - вывтянуть 503 или длиный по времени запрос
yopp
из грейлога какого?
Gor
неа
Gor
там же restapi
Gor
можно собирать в ту же монго и делать выборку по запросу из графаны уже
Gor
микросервис графана экспортера кстати https://github.com/microservice-framework/microservice-adapter-metrics-prometheus
Gor
ввобщем из-за шаблонности rest api можно хранить запрос, что вызвал 503 или по времени долго шел, и его уже отдельно отрабатывать
yopp
типа из прометеевских метаданных восстановить урл?
yopp
я не понимаю как из временного ряда можно получить обратно запрос
yopp
и что под запросом понимается
yopp
полностью http заголовок?
yopp
если нет, то толку очень мало
Gor
я не понимаю как из временного ряда можно получить обратно запрос
Хранить детали запроса по свойствам: код ответа, путь, время
yopp
это я под «грейлогом» и имел ввиду :)
Gor
полностью http заголовок?
Полностью http запрос. И заголовок и тело, и плюс детали ответа
yopp
куда-то сливать заголовки и оттуда потом тянуть
Gor
это я под «грейлогом» и имел ввиду :)
Ага, ок. У меня на это ассоциации на какую-то конкретную апр
Gor
Апп
Al
Всем привет!
Al
ervice mongod status ● mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Sat 2019-11-02 17:38:22 MSK; 2s ago Docs: https://docs.mongodb.org/manual Process: 308 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=2) Main PID: 308 (code=exited, status=2) ноя 02 17:38:22 cat systemd[1]: Started MongoDB Database Server. ноя 02 17:38:22 cat mongod[308]: Unrecognized option: authorization
Al
не робит в конфиге #security: authorization: "enabled"
yopp
Unrecognized option: authorization
yopp
смотрите на свой unit файл
Al
а ладно подскажите как исправить?
Al
вроде по докам пишу
yopp
https://docs.mongodb.com/manual/reference/configuration-options/#security-options
Al
security: keyFile: <string> clusterAuthMode: <string> authorization: <string>
yopp
да, в yaml отступы это очень важно
yopp
у вас закоментирован security
Al
ох..
yopp
а authorization остался «висеть»
Al
без комментария тоже пробовал
yopp
а это ошибка, потому что на верхнем уровне такого ключа нет
Al
заработало. отступ еще нужен был на второй строке
Al
> db.createUser({ user: "alonecat", pwd: "123", roles: [{ db: "admin", role: "userAdminAnyDatabase"}, {db: "admin", role: "dbAdminAnyDatabase"}, { db: "nofiles", role: "readWriteAnyDatabase"}] }) 2019-11-02T18:14:44.118+0300 E QUERY [js] Error: couldn't add user: No role named readWriteAnyDatabase@nofiles :
Al
Что не так тут с созданием юзера? Пароль если что тестовый. мне нужно создать юзера который может админить других юзеров + для базы nofiles все права на чтения и запись
Al
смотрю вот сюда https://docs.mongodb.com/manual/tutorial/enable-authentication/
Al
https://docs.mongodb.com/manual/reference/built-in-roles/#all-database-roles насколько я понимаю роли применяются ко всем базам. зачем же в примере указано что нужен массив в котором подобная роль и база рядом.
Al
> db.createUser({ user: "alonecat", pwd: "123", roles: [{ db: "admin", role: "userAdmin"} , { db: "admin", role: "dbAdmin"}, { db: "nofiles", role: "readWrite"}]}); вот так сработало, когда роли для отдельных баз.. посмотрим теперь что юзер может.
Al
ураа!!! все работает как надо!
IB
Добрый вечер Я пишу телеграм бот на питоне , хотел бы использовать монгодб Оказывается есть две популярные библеотеки pymongo( no model) mongoengines(model) какой лучше выбрать
Denis
Добрый вечер Я пишу телеграм бот на питоне , хотел бы использовать монгодб Оказывается есть две популярные библеотеки pymongo( no model) mongoengines(model) какой лучше выбрать
имхо лучше чтобы модель была, нужна валидация перед записью в базу хоть в монге и нет схемы (по дефолту), но схемана уровне кода обязательно должна быть, чтобы мусор в базу не писать
IB
Спасибо
IB
Еще маленький вопрос по не теме , для локализации использовать бд или есть более удобный вариант?
Al
А никто не знает про такое Server start error MongoTimeoutError: Server selection timed out after 30000 ms 10|server | at Timeout.<anonymous> (/home/alonecat81/www/nofiles-server-mongo/node_modules/mongodb/lib/core/sdam/topology.js:878:9) 10|server | at listOnTimeout (internal/timers.js:531:17) 10|server | at processTimers (internal/timers.js:475:7) { 10|server | name: 'MongoTimeoutError', 10|server | reason: MongoError: Authentication failed.
Al
Это появилось после того как ввел аутентификацию.
Al
в строке подключения необходимо логин пароль указать
я все это делал. Заработало только когда удалил юзеров и создал заново юзера в админской базы и затем отдельного юзера создал специально для базы nofiles
Al
А как теперь расшарить удаленные подключения? Что бы в инет смотрело? bindIp ?
yopp
bind на 0.0.0.0, да
Al
bind на 0.0.0.0, да
# network interfaces net: port: 27017 #bindIp: 127.0.0.1 bindIp: 0.0.0.0
Al
так?
Al
Заработало. Подключаюсь через внешний ip и из ноде приложений тоже. @dd_bb спасибо. А все это что бы поставить виртуалку и с нее подключаться к хостовой БД. Ну или наоборот..
IB
Good night Guys I would like to do complex query to my mongodb. So I need to take language code from user collection and take translation some_word("User will give this word that is located in language collection") from language collection dependin on language code
IB
IB
IB
if smth was unclear u can ask, sorry now writing in russian
Aʟᴇx
А почему перевод находится в базе?
Aʟᴇx
По какой причине ты не сделал его в кофигурационном файле или прямиком в коде приложения/бота?
IB
А почему перевод находится в базе?
It was challenge for myself trying to use db for localisation( i didn't know what to use for localisation)😔