Description:
Enable log_disconnections on PostgreSQL Servers.
Rationale:
Enabling log_disconnections helps PostgreSQL Database to Logs end of a session,including duration, which in turn generates query and error logs. Query and error logs can be used to identify, troubleshoot, and repair configuration errors and sub-optimal performance.
Impact:
Enabling this setting will enable a log of all disconnections. If this is enabled for a high traffic server, the log may grow exponentially.
Audit:
From Azure Portal
1. From Azure Home select the Portal Menu
2. Go to Azure Database for PostgreSQL servers
3. For each database, click on Server parameters
4. Search for log_disconnections.
5. Ensure that value is set to ON.
From Azure CLI
Ensure log_disconnections value is set to ON
az postgres server configuration show --resource-group <resourceGroupName> --
server-name <serverName> --name log_disconnections
From PowerShell
Ensure log_disconnections value is set to ON
Get-AzPostgreSqlConfiguration -ResourceGroupName <ResourceGroupName> -
ServerName <ServerName> -Name log_disconnections
Remediation:
From Azure Portal
1. From Azure Home select the Portal Menu
2. Go to Azure Database for PostgreSQL servers
3. For each database, click on Server parameters
4. Search for log_disconnections.
5. Click ON and save.
From Azure CLI
Use the below command to update log_disconnections configuration.
az postgres server configuration set --resource-group <resourceGroupName> --
server-name <serverName> --name log_disconnections --value on
From PowerShell
Use the below command to update log_disconnections configuration.
Update-AzPostgreSqlConfiguration -ResourceGroupName <ResourceGroupName> -
ServerName <ServerName> -Name log_disconnections -Value on
Default Value:
By default log_disconnections is disabled (set to off).
References:
1. https://docs.microsoft.com/enus/rest/api/postgresql/singleserver/configurations/list-by-server
2. https://docs.microsoft.com/en-us/azure/postgresql/howto-configure-serverparameters-using-portal