Description:

The log_disconnections server parameter in PostgreSQL controls whether the database logs successful client disconnections. Enabling this parameter allows database administrators to track when sessions are terminated, providing a complete audit trail of database connections alongside log_connections. This is critical for auditing, security monitoring, and troubleshooting Azure PostgreSQL Database Servers (Single or Flexible).


Rationale:

  • Security Monitoring: Complements log_connections by providing a full session lifecycle, helping detect abnormal session terminations or unauthorized access patterns.

  • Audit & Compliance: Supports regulatory and internal auditing requirements by maintaining records of all connection/disconnection events.

  • Troubleshooting: Useful for diagnosing session-related issues and unexpected application disconnects.


Impact:

  • Full visibility into connection lifecycle events for compliance and operational monitoring.

  • Supports security audits and incident investigations.

  • Enhances troubleshooting capabilities for session-related problems.

  • Increases log volume, especially in high-traffic environments; proper log rotation and storage management are required.

  • Minimal performance overhead for logging disconnections; typically negligible in Azure-managed PostgreSQL.


Default Value:

  • For Azure Database for PostgreSQL Flexible Server, log_disconnections is ON by default


Pre-requisites:

  • Global Administrator or Security Administrator permissions.

  • Must be Azure Database for PostgreSQL – Flexible Server (or Single Server if the parameter is supported).


Test Plan:

  1. Sign in to the Azure Portal at https://portal.azure.com

  2. Search for and open the Azure Database for PostgreSQL server

  3. Select the target PostgreSQL server

  4. From the left menu, under settings, select Server parameters

  5. Search for the parameter log_disconnections

  6. Verify log_disconnections is set to ON

  7. If log_disconnections is not set to ON, follow the implementation steps


Implementation Steps:

  1. Sign in to the Azure Portal at https://portal.azure.com

  2. Search for your Azure Database for PostgreSQL server.

  3. On the left-hand menu, under the Settings section, select server parameters.

                                           

  1. Search for log_disconnections. 

  2. Set the value to ON

  1. Save the changes.


Backout Plan:

  1. Log in to the Azure Portal.

  2. Search for your Azure Database for PostgreSQL server (Single or Flexible).

  3. On the left-hand menu, under the Settings section, select server parameters.

  4. Search for log_disconnections. 

  5. Set the value to OFF.

  6. Save the changes.


Reference: