Verifique o parâmetro: log_line_prefix

log_line_prefix = '%u %d %h %p %t %i'
                                        # special values:
*                                        #   %u = user name*
                                     *   #   %d = database name*
                                        #   %r = remote host and port
                      *                  #   %h = remote host*
                  *                      #   %p = process ID*
                                *        #   %t = timestamp without
milliseconds*
                                        #   %m = timestamp with milliseconds
                                  *      #   %i = command tag*
                                        #   %c = session ID
                                        #   %l = session line number
                                        #   %s = session start timestamp
                                        #   %v = virtual transaction ID
                                        #   %x = transaction ID (0 if none)
                                        #   %q = stop here in non-session
                                        #        processes
                                        #   %% = '%'
                                        # e.g. '<%u%%%d> '


2009/4/23 Guilherme Carvalho <[email protected]>

> Mas neste caso eu não vou ter como saber qual usuário executou a ação
> certo?
>
> 2009/4/23 Roberto Mello <[email protected]>
>
> 2009/4/23 Guilherme Carvalho <[email protected]>:
>> >
>> > No banco existe uma tabela de log, que o sistema armazena os dados, mas
>> eu
>> > quero deixar o sistema mais completo armazenando o comando SQL
>> executado,
>> > teria como eu pegar o comando executado sobre uma tabela via trigger,
>> porque
>> > aí eu pego este comando e gravo na tabela.
>> >
>> > Seria para os eventos de insert, update, delete. Lembrando que isto tem
>> que
>> > ser feito pelo banco.
>>
>> 1) Configure o PostgreSQL para escrever todos os insert/update/delete
>> para o arquivo de log
>>
>> log_statement = 'mod'
>>
>> 2) Escreva um programinha que leia o arquivo de log e insira os
>> comandos na sua tabela de log
>>
>> 3) Agende seu programa para rodar num determinado horario(s)
>>
>> Dessa maneira voce nao precisa de preocupar em botar gatilhos em todas
>> as tabelas do sistema, e voce nao vai perder performance do seu banco
>> esperando que os gatilhos sejam executados para armazenar dados que
>> voce nao vai precisar em tempo real.
>>
>> Roberto
>> _______________________________________________
>> pgbr-geral mailing list
>> [email protected]
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>
>
>
> --
> Guilherme de Carvalho Carneiro
> Analista de Sistemas | Prefeitura Municipal de Palmas
>
> Sent from Goiania, GO, Brazil
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a