pg-index-health icon indicating copy to clipboard operation
pg-index-health copied to clipboard

pg-index-health as cmd-utility

Open biter777 opened this issue 4 years ago • 3 comments

Иван, приветствую!

Подскажи пожалуйста, а можно ли оформить pg-index-health как консольную утилиту?

biter777 avatar Mar 03 '20 21:03 biter777

Иван, приветствую!

Подскажи пожалуйста, а можно ли оформить pg-index-health как консольную утилиту?

@biter777 Привет. В принципе, да. Мы с коллегами уже пару раз поднимали этот вопрос, но не было такой необходимости. Здесь сначала хотелось бы понять сценарии использования. И обсудить удобный формат передачи параметров. Например, как будет задаваться список исключений? Нужно ли поддерживать передачу параметров подключения к БД через переменные окружения?

mfvanek avatar Mar 04 '20 07:03 mfvanek

@mfvanek Для утилит более стандартна передача через флаги. По мне так не суть важно как передавать параметры - флагами, переменными окружения или через конфиг.

Хотя, конечно, параметры подключения являются "чувствительной информацией". Тут, имхо, любая реализация найдет своих критиков. :)

Как вариант - в конфигах хранятся параметры БД, список исключений и прочая сопутствующая информация. При запуске через флаги передается конфиг/список конфигов. Можно запускать утилиту по крону, включая кейс проверки разных БД из одной точки.

Запуск утилиты и доступ к конфигам определяются локальной системой разграничения доступа. В БД утилита лимитируется соответствующими правами роли. В утилиту можно добавить проверку своих прав в БД, и при использовании повышенных привилегий чтобы выдавала ошибку/предупреждение.

В общем, тут главное начать... :)

biter777 avatar Mar 04 '20 10:03 biter777

@biter777 Please take a look at pg_analyse It's based on my SQL-queries.

mfvanek avatar Mar 18 '20 14:03 mfvanek