DB Internals AtlasPostgreSQL 18.6 Home About

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 = warning in migration scripts to hide noisy NOTICEs like "… does not exist, skipping".
  • SET client_min_messages = debug1 to 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

Logger (logging collector)

Related parameters

log_min_messages log_min_error_statement icu_validation_level

All Client Connection Defaults parameters