Em 5 de julho de 2011 14:00, Sebastian SWC <[email protected]> escreveu:
> 2011/7/5 Flavio Henrique Araque Gurgel <[email protected]>:
[... corte ...]
>> Você pode ligar só durante um pequeno tempo, analisar e voltar à sua
>> conf anterior. Tem que ligar antes que uma transação dessas apareça,
>> claro.
>>
>
> Flavio, não achas que, de alguma forma isso é gerar log, como sugerido
> pelo Guedes?

Sim, seria.

> Meu problema é que nem sempre tenho a oportunidade de acompanhar o
> banco até dar problema e deixar sempre logando gera uma bagunça sem
> tamanho.

E se a sua aplicação "marcasse" um ponto critico do sistema de alguma
maneira que restringisse a você as possíveis consultas? Pois bem, a
aplicação poderia definir a sua application_name em determinados
pontos do código

Veja, isso teria que ser usado com cautela e em apenas alguns pontos
do sistema, mas é válido.

http://www.postgresql.org/docs/9.0/static/runtime-config-logging.html#RUNTIME-CONFIG-LOGGING-WHAT

Exemplo:

-- APP 1

postgres=# SELECT procpid,usename,current_query,application_name FROM
pg_stat_activity ;
 procpid | usename |                                 current_query
                            | application_name
---------+---------+-------------------------------------------------------------------------------+------------------
    6547 | guedes  | SELECT
procpid,usename,current_query,application_name FROM pg_stat_activity ;
| psql
    6507 | guedes  | <IDLE>
                            | psql
(2 rows)

postgres=# BEGIN ;
BEGIN
postgres=# SET application_name TO 'RELATORIO_2100';
SET
postgres=# SELECT procpid,usename,current_query,application_name FROM
pg_stat_activity ;
 procpid | usename |                                 current_query
                            | application_name
---------+---------+-------------------------------------------------------------------------------+------------------
    6547 | guedes  | SELECT
procpid,usename,current_query,application_name FROM pg_stat_activity ;
| RELATORIO_2100
    6507 | guedes  | <IDLE>
                            | psql



--- APP 2
postgres=# SELECT procpid,usename,current_query,application_name FROM
pg_stat_activity ;
 procpid | usename |                                 current_query
                            | application_name
---------+---------+-------------------------------------------------------------------------------+------------------
    6547 | guedes  | <IDLE> in transaction
                            | RELATORIO_2100
    6507 | guedes  | SELECT
procpid,usename,current_query,application_name FROM pg_stat_activity ;
| psql


Em outras palavras você estaria próximo da origem do problema, mas
ainda não teria a consulta em mãos. Além do mais a aplicação teria que
ser modificada para executar este procedimento.

[]s
-- 
Dickson S. Guedes
mail/xmpp: [email protected] - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a