Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Собрать статистику использования БД #92

Open
9 tasks
viribus-issue-bot opened this issue Aug 2, 2024 · 1 comment
Open
9 tasks
Labels
good first issue 👶 Задача подходит для новичков new feature 🆕 Новая фича или запрос на нее

Comments

@viribus-issue-bot
Copy link

Issue open by Roman Dyakov via telegram message.

Зачем

  • Позволит выдавать ачивки за активность, которую пользователи создают в БД
  • Позволит автоматизированно отнимать доступы у неактивных аккаунтов во избежании проблем с безопасностью
  • Позволит узнать, какие данные используются, а какие бесполезно интегрированы
  • Позволит узнавать о неавторизованных доступах в БД, куда у пользователей не должно быть доступов

План

  • Собрать информацию об активности в Postgres
    • Забрать информацию о запущенных пользователем запросов в STG_POSTGRES.pg_stat_activity. Забрать можно из SELECT * FROM pg_stat_activity (уточнить что делать с историей).
      • Сделать таблицу dwh_definitions
      • Собрать пайплайн dwh_pipelines
      • Запускать пайплайн в проде раз в 10 минут
  • Совместить информацию о пользователях Твой ФФ и их активности в Postgres.
    • Построить таблицу ODS_ACTIVITY.postgres. В ключах должны быть user_id (из Auth API), имя пользователя postgres (есть в auth api и данных portsgres, ключ для джойна данных), время (округленное до ровной сетки в 10 минут, т.е. 2024-01-01T10:00, 2024-01-01T10:10 и тд), тип окружения (название базы данных, в которую делался запрос). Запись должна быть для каждого момента, когда пользователь был в активен и не должно быть, если пользователь активен не был
  • Собрать информацию об использовании таблиц
    • Построить таблицу ODS_SECURITY.postgres_object_usage. В ключах должны быть user_id (из Auth API, nullable), имя пользователя postgres (есть в auth api и данных portsgres, ключ для джойна данных), время (точное), база данных (test/prod/dwh/dwh_test), название схемы, название таблицы, тип запроса (INSERT/SELECT/DELETE/OTHER), query_id – id запуска запроса на получение/запись/удаление данных.
@github-project-automation github-project-automation bot moved this to Backlog in Viribus Team Aug 2, 2024
@dyakovri dyakovri added new feature 🆕 Новая фича или запрос на нее good first issue 👶 Задача подходит для новичков labels Aug 2, 2024
@parfenovma parfenovma moved this from Backlog to Todo in Viribus Team Dec 7, 2024
@parfenovma
Copy link
Contributor

Прикольно, надо сделать

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue 👶 Задача подходит для новичков new feature 🆕 Новая фича или запрос на нее
Projects
Status: Todo
Development

No branches or pull requests

3 participants