Control: Ensure Server Parameter 'logfiles.retention_days' is greater than 3 days for PostgreSQL flexible Server
Description
Ensure logfiles.retention_days on PostgreSQL flexible Servers is set to an appropriate value.
Usage
Run the control in your terminal:
powerpipe control run azure_compliance.control.postgres_flexible_server_log_retention_days_3
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run azure_compliance.control.postgres_flexible_server_log_retention_days_3 --share
SQL
This control uses a named query:
select s.id as resource, case when (config -> 'ConfigurationProperties' ->> 'value')::integer <= 3 then 'alarm' else 'ok' end as status, case when (config -> 'ConfigurationProperties' ->> 'value')::integer <= 3 then s.name || ' log files are retained for 3 days or lesser.' else s.name || ' log files are retained for more than 3 days.' end as reason , s.resource_group as resource_group , sub.display_name as subscriptionfrom azure_postgresql_flexible_server s, jsonb_array_elements(flexible_server_configurations) as config, azure_subscription subwhere config ->> 'Name' = 'logfiles.retention_days' and sub.subscription_id = s.subscription_id;