Re: log_min_messages per backend type
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Euler Taveira <euler@eulerto.com>,
Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2025-03-05T16:40:55Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow log_min_messages to be set per process type
- 38e0190ced71 19 (unreleased) landed
-
Assign "backend" type earlier during process start-up
- 0c8e082fba8d 19 (unreleased) landed
-
Use integer backend type when exec'ing a postmaster child
- f1cd34f95272 19 (unreleased) landed
-
Sort guc_parameters.dat alphabetically by name
- fce7c73fba4e 19 (unreleased) cited
-
Create a separate file listing backend types
- dbf8cfb4f02e 19 (unreleased) cited
On 2025-03-04 Tu 7:33 PM, Euler Taveira wrote: >> I think it should be acceptable to configure one global setting with >> exceptions for particular backend types: >> >> log_min_messages = WARNING, autovacuum:DEBUG1 >> >> Right now I think the code only accepts the unadorned log level if there >> are no other items in the list. I think the proposal downthread is to >> use the keyword ALL for this, >> >> log_min_messages = all:WARNING, autovacuum:DEBUG1 # I don't like this >> >> but I think it's inferior, because then "all" is not really "all", and I >> think it would be different if I had said >> >> log_min_messages = autovacuum:DEBUG1, all:WARNING # I don't like this >> >> because it looks like the "all" entry should override the one I set for >> autovacuum before, which frankly would not make sense to me. > > Good point. After reflection, I agree that "all" is not a good keyword. > This patch turns backend type as optional so WARNING means apply this > log level as a final step to the backend types that are not specified in > the list. > >> So I think these two lines, >> >> log_min_messages = WARNING, autovacuum:DEBUG1 >> log_min_messages = autovacuum:DEBUG1, WARNING >> >> should behave identically and mean "set the level for autovacuum to >> DEBUG1, and to any other backend type to WARNING. > > Done. Just bikeshedding a bit ... I'm not mad keen on this design. I think the value should be either a single setting like "WARNING" or a set of type:setting pairs. I agree that "all" is a bad name, but I think "default" would make sense. I can live with it but I think this just looks a bit odd. cheers andrew -- Andrew Dunstan EDB:https://www.enterprisedb.com