pg-index-health
pg-index-health copied to clipboard
pg-index-health as cmd-utility
Иван, приветствую!
Подскажи пожалуйста, а можно ли оформить pg-index-health как консольную утилиту?
Иван, приветствую!
Подскажи пожалуйста, а можно ли оформить pg-index-health как консольную утилиту?
@biter777 Привет. В принципе, да. Мы с коллегами уже пару раз поднимали этот вопрос, но не было такой необходимости. Здесь сначала хотелось бы понять сценарии использования. И обсудить удобный формат передачи параметров. Например, как будет задаваться список исключений? Нужно ли поддерживать передачу параметров подключения к БД через переменные окружения?
@mfvanek Для утилит более стандартна передача через флаги. По мне так не суть важно как передавать параметры - флагами, переменными окружения или через конфиг.
Хотя, конечно, параметры подключения являются "чувствительной информацией". Тут, имхо, любая реализация найдет своих критиков. :)
Как вариант - в конфигах хранятся параметры БД, список исключений и прочая сопутствующая информация. При запуске через флаги передается конфиг/список конфигов. Можно запускать утилиту по крону, включая кейс проверки разных БД из одной точки.
Запуск утилиты и доступ к конфигам определяются локальной системой разграничения доступа. В БД утилита лимитируется соответствующими правами роли. В утилиту можно добавить проверку своих прав в БД, и при использовании повышенных привилегий чтобы выдавала ошибку/предупреждение.
В общем, тут главное начать... :)
@biter777 Please take a look at pg_analyse It's based on my SQL-queries.