PostgreSQLFlexPGBouncer — PgBouncer Logs
The log stream of the built-in PgBouncer connection pooler. Only emitted when PgBouncer is enabled on the Flexible Server. One record per log line.
Kusto query
let server = "my-pg-prd-1";
AzureDiagnostics
| where Category == "PostgreSQLFlexPGBouncer" and LogicalServerName_s == server
| project log_s, source_s
Fields
log_s(string) — the raw PgBouncer log line (timestamp, PID, level, message).source_s(string) — log source/stream (e.g.stderr).
Use cases — troubleshooting
- Pooler-level connection rejections — clients refused at PgBouncer before reaching Postgres (
no more connections allowed, pool full). - Pool exhaustion / queuing —
pool_sizereached, clients waiting for a server connection. - Auth failures at the pooler — login failures handled by PgBouncer (separate from engine
pg_hbaerrors). - Client/server churn — frequent connect/disconnect, timeouts (
client_idle_timeout,server_idle_timeout). - Pooler restarts / config reloads — confirm PgBouncer (re)started or reloaded settings.
- Why connections "vanish" — distinguish pooler-side drops from engine-side drops.