Existe um PostgreSQL equivalente ao SQL Server profiler?

Preciso de ver as consultas submetidas a um servidor PostgreSQL. Normalmente eu usaria o perfil do servidor SQL para executar esta ação na terra do servidor SQL, mas ainda estou para encontrar como fazer isso no PostgreSQL. Parece haver algumas ferramentas pay-for, eu estou esperando que haja uma variante de código aberto.

Author: Răzvan Flavius Panda, 2010-03-12

5 answers

Você pode usar a configuração de configuração log_ statement para obter a lista de todas as consultas para um servidor

Https://www.postgresql.org/docs/current/static/runtime-config-logging.html#guc-log-statement

Basta definir isso, e a localização do ficheiro de registo e você terá a lista. Você também pode configurá-lo para apenas registar as consultas de longa duração.

Depois podes pegar nessas perguntas e explicar-lhes o que se está a passar. o.

Https://www.postgresql.org/docs/9.2/static/using-explain.html

 48
Author: Joshua Smith, 2018-05-29 22:24:53

Adicionando à resposta de Josué, para ver que consultas estão actualmente em execução basta emitir a seguinte declaração a qualquer momento (por exemplo, na janela de consulta de PG Adminii):

SELECT datname,procpid,current_query FROM pg_stat_activity;

Saída da amostra:

     datname    | procpid | current_query
 ---------------+---------+---------------
  mydatabaseabc |    2587 | <IDLE>
  anotherdb     |   15726 | SELECT * FROM users WHERE id=123 ;
  mydatabaseabc |   15851 | <IDLE>
 (3 rows)
 27
Author: vladr, 2010-03-12 06:12:32

Descobri o pgBadger ( http://dalibo.github.io/pgbadger e é uma ferramenta fantástica que salvou a minha vida muitas vezes. Aqui está um exemplo de relatório: http://dalibo.github.io/pgbadger/samplev4.html Se você abrir e ir para o menu' top', você pode ver as consultas mais lentas e as consultas demoradas. Então você pode pedir detalhes e ver gráficos bonitos que mostram as consultas por hora e se você usar o botão de detalhe você pode ver o texto SQL de uma forma bonita. Então eu posso ver isso esta ferramenta é gratuita e perfeita.

 21
Author: Giovanni Porcari, 2015-03-20 20:15:52

Preciso de ver as consultas submetidas a um servidor PostgreSQL

Como uma opção, se você usar pgAdmin (na minha imagem é pgAdmin 4 v2.1). Você pode observar as consultas através da página "Painel": pgadmin4 query from application, dashboard

 2
Author: Andrew Kotov, 2018-04-07 16:46:03
Adicionando à resposta de Josué e vladr

Funciona para mim:

Abrir postgresql.conf

Conjunto:

Log_statement = ' mod '

Log_min_messages = debug2

Abra o último registo na pasta C:\Program ficheiros\PostgreSQL\9.6\data\PG_ log\

As perguntas estarão lá.

Eu uso postgresql-9, 6, 5-1

 0
Author: Henrique Lima, 2017-10-04 16:47:44