Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
30.10.2021, 12:01
|
|||
---|---|---|---|
Нужен совет - логирование талиц |
|||
#18+
В общем нужно логировать изменения в таблицах. Сразу напрашивается решение - навесить тригер и лить лог в специальную таблицу. Но есть нюанс - нужно понимать кто эти изменения сделал. Тригер ничего не знает о пользователе, который залогинился в приложении (не путать с пользователем БД). Вот думаю как сие реализовать. У кого какие мысли есть? Всем за ранее благодарна! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.10.2021, 23:37
|
|||
---|---|---|---|
|
|||
Нужен совет - логирование талиц |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.10.2021, 20:18
|
|||
---|---|---|---|
Нужен совет - логирование талиц |
|||
#18+
x0125 Сеанс всегда от одного пользователя БД происходит. Кроме того надо значение в тригер передать, не думаю тригер увидит правильную временную таблицу если они все под одним пользователем БД будут создаваться. У меня про пользователя знает только приложение, а сервер БД ничего про него не знает. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.10.2021, 22:34
|
|||
---|---|---|---|
|
|||
Нужен совет - логирование талиц |
|||
#18+
Cola x0125 Сеанс всегда от одного пользователя БД происходит. Кроме того надо значение в тригер передать, не думаю тригер увидит правильную временную таблицу если они все под одним пользователем БД будут создаваться. У меня про пользователя знает только приложение, а сервер БД ничего про него не знает. Вот приложение и должно тем или иным (из описанных в ссылке способов) при соединении с базой передать пользователя в базу. И дальше работать в контексте этого конкретного соединения с базой. Это если конечно нет pgbouncer в режиме transaction pooling... тогда всё становится резко интереснее. Триггер увидит нужную временную таблицу если она была создана в этом конкретном соединении с базой от приложения. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.12.2021, 09:19
|
|||
---|---|---|---|
Нужен совет - логирование талиц |
|||
#18+
Cola x0125 Сеанс всегда от одного пользователя БД происходит. Кроме того надо значение в тригер передать, не думаю тригер увидит правильную временную таблицу если они все под одним пользователем БД будут создаваться. У меня про пользователя знает только приложение, а сервер БД ничего про него не знает. В триггере надо зачитать юзера, а не передавать его туда. Приложение должно, как выше писали, установить юзера, например контекстом вызвать set_config('current_user', 242455, false ) , а триггер может его зачитать например select current_setting('current_user', true) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1993729]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
25ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 272ms |
total: | 385ms |
0 / 0 |