Postgres: come posso visualizzare tutte le istruzioni SQL eseguite dal server di database?

Sono in fase di revisione di each istruzione SQL che un'applicazione fa contro il database, per motivi di performance. C'è un modo semplice per registrare tutte le istruzioni eseguite dal server di database PostgreSQL? Grazie.

  • PostgresQL su Amazon EBS volume, performance realistiche, o passare a qualcosa di più leggero?
  • Come memorizzare 3 milioni di record nel formato dei valori chiave?
  • Qual è il nome utente / password superuser predefinito per postgres dopo una nuova installazione?
  • Le performance di I / O di MSSQL sono diminuite dopo il consolidamento SAN?
  • Esistono semplici strumenti di row di command per decodificare una string di richiesta di iniezione SQL?
  • Docker: il permesso negato sulle cartelle aggiunte con ADD
  • 3 Solutions collect form web for “Postgres: come posso visualizzare tutte le istruzioni SQL eseguite dal server di database?”

    L'opzione di configuration che stai cercando è log_statement = "all" (se si desidera solo le istruzioni), o log_min_statement_duration = <some number> se si è appena dopo le query "lente" (per un certo valore di "lento"). Vedere http://www.postgresql.org/docs/current/static/runtime-config-logging.html per ulteriori dettagli sulla configuration della logging.

    Naturalmente, è ansible rilevare le query più lente da soli, ma vi consiglio di utilizzare pgFouine – un analizzatore di registro PostgreSQL. E 'facile da installare e davvero utile.

    Rapporti di esempio: qui e qui .

    Il module auto_explain è molto utile per questo. Non solo registrerà le istruzioni, registrerà i piani di esecuzione e può anche registrare istruzioni eseguite in PL / PgSQL. Il colpo di performance è abbastanza basso a less che non abiliti l'analisi, nel qual caso dovresti presentare un po 'di tempo di sovraccarico per tutte le query.

    Vedere auto_explain nella documentazione.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.