Christophe Pettus: All Your GUCs in a Row: client_min_messages
The article discusses the PostgreSQL parameter client_min_messages, which controls the verbosity of messages sent to the client. It highlights common confusions with similar parameters and explains the implications of setting different levels. The author advises using this parameter judiciously to avoid missing important warnings while silencing unnecessary notices.
- ▪client_min_messages controls the messages sent to the client, with levels ranging from DEBUG5 to ERROR.
- ▪There is a common confusion between client_min_messages and log_min_messages, as they rank the same terms differently.
- ▪Setting client_min_messages to WARNING can help reduce noise from schema tooling while still allowing important warnings to be seen.
Opening excerpt (first ~120 words) tap to expand
2026-05-25 3 min PostgreSQL All Your GUCs in a Row: client_min_messages client_min_messages controls how much the server says to you: the messages that come back over the wire to your session. It is constantly confused with the parameter that controls what the server writes to its own log. Those are different concerns with different parameters, and the confusion is where most of the trouble starts. The default is NOTICE, the context is user (so any role can set it per session, per role, or per database, with no restart involved), and the levels run in increasing severity: DEBUG5 through DEBUG1, then LOG, NOTICE, WARNING, ERROR. Set the parameter to a level and you get that level plus everything more severe; the higher you set it, the quieter your session gets. ERROR is as high as it goes.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Postgr.