On Fri, 2011-09-16 at 11:16 -0600, Alec Swan wrote:
> Hello,
> 
> I am trying to get postgres 8.4.4 to log the duration and statement of
> queries that take longer than 200 ms. I played with the log settings
> in postgresql.conf but I still see logs of durations of very fast
> statements. Here is my current configuration:
> 
> log_min_duration_statement = 200
> log_duration = on
> log_line_prefix = '<%t> '
> log_statement = 'all'
> 
> With this configuration I am still getting these in the log files:
> 
> <2011-09-02 14:47:19 EDT> LOG:  duration: 0.017 ms
> <2011-09-02 14:47:19 EDT> LOG:  execute <unnamed>: SET SESSION
> CHARACTERISTICS AS TRANSACTION READ WRITE
> <2011-09-02 14:47:19 EDT> LOG:  duration: 0.004 ms
> <2011-09-02 14:47:19 EDT> LOG:  duration: 0.014 ms
> <2011-09-02 14:47:19 EDT> LOG:  duration: 0.017 ms
> <2011-09-02 14:47:19 EDT> LOG:  execute <unnamed>: SET SESSION
> CHARACTERISTICS AS TRANSACTION READ ONLY
> 
> 
> How do I filter these out?
> 

You should set log_duration to off, and log_statement to none.
log_min_duration_statement will take care of logging duration and
statement if the query duration is longer than 200 ms.

> Also, how do I restrict the maximum number of log files generated to 2
> with the assumption that they will roll over when filled?
> 

You can't do that with PostgreSQL configuration. You need another tool,
such as logrotate.


-- 
Guillaume
  http://blog.guillaume.lelarge.info
  http://www.dalibo.com


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

Reply via email to