Hello,

Postgres has configurations to log statements into server logs, but there
are few convenience ways to summarize the logs as a view. Some external
projects like pgFouine or PQA have the functionality, but they consume
much CPU resources and cannot summarize in real-time -- summarize-time
is longer than write-time of the logs in heavily loads.

I'd like to submit pg_stat_statements contrib module, that counts up
incoming statements in shared memory and summarizes the result as a view.
It is just a statements-version of pg_stat_user_functions.

Information collected by the view are:
  - query string
  - total_time and cpu_time
  - buffer access (gets, reads, writes, local reads and local writes)
  - number of rows retrieved or affected
(There is a sample output in sgml in the attached tarball.)

I attach WIP version of the module. auto_explain.patch is also required
because the module uses a new version DefineCustomVariable.
http://archives.postgresql.org/message-id/[EMAIL PROTECTED]
The module allocates fixed share memory at the server start and store
statements statistics in it. On out of memory, least recently used
statements are discarded.

Comments and suggenstions welcome!

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center

Attachment: pgstatstatements.sgml
Description: Binary data

Attachment: pg_stat_statements-1011.tgz
Description: Binary data

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to