Josh Berkus wrote:
>> Huh? The typical use-case is to enable it for all sessions by
>> including it in shared_preload_libraries. That doesn't require any
>> particular session to be superuser. (If you're superuser you can then
>> turn it *off* in your session, should you wish.)
>
> It's not practical to have auto-explain on for all queries on a server
> which is processing 10K queries/minute. And non-superusers can't alter
> the settings in their session, even the min_duration.
>
> A practical use of auto-explain would involve during it on for a single
> user session, or for a specific database user, neither of which are
> possible.
I think that Tom is right.
You can reduce the logging volume on busy servers with
auto_explain.log_min_duration. You can also activate it for a single
database user only by setting log_min_duration to -1 globally and
change the setting for one user with ALTER ROLE SET, right?
And I am under the impression that parameters that influence
what is logged tend to be superuser only for a good reason
(the only exception I see are the debug_print_* parameters).
Yours,
Laurenz Albe