🔍
Audit Log для PostreSQL своими руками 🔎
https://www.bluelabellabs.com/blog/how-to-setup-automatic-audit-logging-in-postgres-using-triggers-and-trigger-functions/В догонку к предыдущему посту добавлю способ самостоятельно сделать Audit Log.
Audit Log – утрированно, сохранение всех операций над БД в отдельную таблицу. Например, Notion проходился по этим данным скриптом и переносил эти операции в отдельные базы для шардирования
Процесс простой:
1. Создаем таблицу, где будем хранить лог
2. Создаем функцию, описывающий создание записей в этом логе
3. Создаем на каждую таблицу триггер на Update, Insert и Delete, который будет запускать функцию создания лога операции
4. Не забываем добавлять его на все таблицы
Ну и, конечно, при большом объеме данных вы можете (1) сделать несколько таблиц для записи лога, (2) иногда его чистить, (3) локально партицировать 1 таблицу на несколько.
Мощной прокачки 💪
Ссылка на статью на Medium