Parameter · Client Connection Defaults / Statement Behavior
client_min_messages
Sets the message levels that are sent to the client. Each level includes all the levels that follow it. The later the level, the fewer messages are sent.
- Default:
notice - Type: enum
- Values: debug5 · debug4 · debug3 · debug2 · debug1 · log · notice · warning · error
- Applies: Session (any user)
In plain words
PostgreSQL sends informational messages to the client, like NOTICE: table "x" does not exist, skipping. This setting hides levels below the chosen one. Errors are always sent, and so is INFO.
For DBAs and operators
Order for this setting: debug5 … debug1, log, notice, warning, error. Note that LOG ranks lower here than in log_min_messages. INFO messages (for example from VACUUM VERBOSE or RAISE INFO) are always sent, and ERROR/FATAL/PANIC can never be suppressed.
Uses:
SET client_min_messages = warningin migration scripts to hide noisy NOTICEs like "… does not exist, skipping".SET client_min_messages = debug1to watch internal debug output in your own session while troubleshooting, without touching the server log.
Pitfall: hiding warnings in application connections hides useful hints (for example about deprecated syntax or transaction state). The setting is independent of what goes to the server log.
How to change it
Any user can change it for their session with SET.
See it in context
Related parameters
log_min_messages log_min_error_statement icu_validation_level