Thread: log_min_duration_statement

log_min_duration_statement

From
bhargav kamineni
Date:
Hi Team,,

I have set log_min_duration_statement=1000 as my configuration but when i observe log file i could see queries that ran below 1000ms are also getting logged , for instance 
duration: 0.089 ms
 duration: 0.175 ms
 duration: 0.139 ms
 duration: 0.451 ms
duration: 0.136 ms
 duration: 0.340 ms
 duration: 0.150 ms
duration: 0.440 ms
duration: 0.338 ms
 duration: 0.156 ms
tion: 0.396 ms
 duration: 0.221 ms
duration: 0.161 ms
 *************
these are my logsettings

              name               |                      setting
---------------------------------+---------------------------------------------------
 log_autovacuum_min_duration     | 0
 log_checkpoints                 | on
 log_connections                 | on
 log_destination                 | syslog
 log_directory                   | log
 log_disconnections              | on
 log_duration                    | off
 log_error_verbosity             | default
 log_executor_stats              | off
 log_file_mode                   | 0600
 log_filename                    | postgresql-%Y-%m-%d_%H%M%S.log
 log_hostname                    | off
 log_line_prefix                 | appname=%a,user=%u,db=%d,pid=%p,txid=%x,vtxid=%v
 log_lock_waits                  | on
 log_min_duration_statement      | 1000
 log_min_error_statement         | error
 log_min_messages                | error
 log_parser_stats                | off
 log_planner_stats               | off
 log_replication_commands        | off
 log_rotation_age                | 1440
 log_rotation_size               | 10240
 log_statement                   | all
 log_statement_stats             | off
 log_temp_files                  | 0
 log_timezone                    | Navajo
 log_truncate_on_rotation        | off
 logging_collector               | on
 max_logical_replication_workers | 4
 syslog_facility                 | local4
 syslog_ident                    | postgres
 syslog_sequence_numbers         | on
 syslog_split_messages           | on
 wal_log_hints                   | off

Regards,
Bhargav K


Re: log_min_duration_statement

From
Adrian Klaver
Date:
On 1/24/19 6:23 AM, bhargav kamineni wrote:
> Hi Team,,
> 
> I have set log_min_duration_statement=1000 as my configuration but when 
> i observe log file i could see queries that ran below 1000ms are also 
> getting logged , for instance
> duration: 0.089 ms
>   duration: 0.175 ms
>   duration: 0.139 ms
>   duration: 0.451 ms
> duration: 0.136 ms
>   duration: 0.340 ms
>   duration: 0.150 ms
> duration: 0.440 ms
> duration: 0.338 ms
>   duration: 0.156 ms
> tion: 0.396 ms
>   duration: 0.221 ms
> duration: 0.161 ms
>   *************

The above would not happen to be autovacuum statements?

You have log_autovacuum_min_duration = 0 below.

> these are my logsettings
> 
>                name               |                      setting
> ---------------------------------+---------------------------------------------------
>   log_autovacuum_min_duration     | 0
>   log_checkpoints                 | on
>   log_connections                 | on
>   log_destination                 | syslog
>   log_directory                   | log
>   log_disconnections              | on
>   log_duration                    | off
>   log_error_verbosity             | default
>   log_executor_stats              | off
>   log_file_mode                   | 0600
>   log_filename                    | postgresql-%Y-%m-%d_%H%M%S.log
>   log_hostname                    | off
>   log_line_prefix                 | 
> appname=%a,user=%u,db=%d,pid=%p,txid=%x,vtxid=%v
>   log_lock_waits                  | on
>   log_min_duration_statement      | 1000
>   log_min_error_statement         | error
>   log_min_messages                | error
>   log_parser_stats                | off
>   log_planner_stats               | off
>   log_replication_commands        | off
>   log_rotation_age                | 1440
>   log_rotation_size               | 10240
>   log_statement                   | all
>   log_statement_stats             | off
>   log_temp_files                  | 0
>   log_timezone                    | Navajo
>   log_truncate_on_rotation        | off
>   logging_collector               | on
>   max_logical_replication_workers | 4
>   syslog_facility                 | local4
>   syslog_ident                    | postgres
>   syslog_sequence_numbers         | on
>   syslog_split_messages           | on
>   wal_log_hints                   | off
> 
> Regards,
> Bhargav K
> 
> 


-- 
Adrian Klaver
adrian.klaver@aklaver.com


Re: log_min_duration_statement

From
bhargav kamineni
Date:
> Hi Team,,

> I have set log_min_duration_statement=1000 as my configuration but when 
> i observe log file i could see queries that ran below 1000ms are also 
> getting logged , for instance
> duration: 0.089 ms
>   duration: 0.175 ms
>   duration: 0.139 ms
>   duration: 0.451 ms
> duration: 0.136 ms
>   duration: 0.340 ms
>   duration: 0.150 ms
> duration: 0.440 ms
> duration: 0.338 ms
>   duration: 0.156 ms
> tion: 0.396 ms
>   duration: 0.221 ms
> duration: 0.161 ms
>   *************

>The above would not happen to be autovacuum statements?
 
Nope, those are not autovaccum related logs , they are related to queries only.

You have log_autovacuum_min_duration = 0 below.

On Thu, 24 Jan 2019 at 20:53, Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 1/24/19 6:23 AM, bhargav kamineni wrote:
> Hi Team,,
>
> I have set log_min_duration_statement=1000 as my configuration but when
> i observe log file i could see queries that ran below 1000ms are also
> getting logged , for instance
> duration: 0.089 ms
>   duration: 0.175 ms
>   duration: 0.139 ms
>   duration: 0.451 ms
> duration: 0.136 ms
>   duration: 0.340 ms
>   duration: 0.150 ms
> duration: 0.440 ms
> duration: 0.338 ms
>   duration: 0.156 ms
> tion: 0.396 ms
>   duration: 0.221 ms
> duration: 0.161 ms
>   *************

The above would not happen to be autovacuum statements?

You have log_autovacuum_min_duration = 0 below.

> these are my logsettings
>
>                name               |                      setting
> ---------------------------------+---------------------------------------------------
>   log_autovacuum_min_duration     | 0
>   log_checkpoints                 | on
>   log_connections                 | on
>   log_destination                 | syslog
>   log_directory                   | log
>   log_disconnections              | on
>   log_duration                    | off
>   log_error_verbosity             | default
>   log_executor_stats              | off
>   log_file_mode                   | 0600
>   log_filename                    | postgresql-%Y-%m-%d_%H%M%S.log
>   log_hostname                    | off
>   log_line_prefix                 |
> appname=%a,user=%u,db=%d,pid=%p,txid=%x,vtxid=%v
>   log_lock_waits                  | on
>   log_min_duration_statement      | 1000
>   log_min_error_statement         | error
>   log_min_messages                | error
>   log_parser_stats                | off
>   log_planner_stats               | off
>   log_replication_commands        | off
>   log_rotation_age                | 1440
>   log_rotation_size               | 10240
>   log_statement                   | all
>   log_statement_stats             | off
>   log_temp_files                  | 0
>   log_timezone                    | Navajo
>   log_truncate_on_rotation        | off
>   logging_collector               | on
>   max_logical_replication_workers | 4
>   syslog_facility                 | local4
>   syslog_ident                    | postgres
>   syslog_sequence_numbers         | on
>   syslog_split_messages           | on
>   wal_log_hints                   | off
>
> Regards,
> Bhargav K
>
>


--
Adrian Klaver
adrian.klaver@aklaver.com

Re: log_min_duration_statement

From
Adrian Klaver
Date:
On 1/24/19 7:52 AM, bhargav kamineni wrote:
>> Hi Team,,
>> 

> 
>  >The above would not happen to be autovacuum statements?
> Nope, those are not autovaccum related logs , they are related to 
> queries only.

On the chance that this setting is being overridden somewhere what does 
the below show when run as a superuser?:

select * from pg_settings where name= 'log_min_duration_statement';


More info:

https://www.postgresql.org/docs/11/view-pg-settings.html

-- 
Adrian Klaver
adrian.klaver@aklaver.com