Control: Log group retention period should be at least 365 days
Description
Ensure a minimum duration of event log data is retained for your log groups to help with troubleshooting and forensics investigations.
Usage
Run the control in your terminal:
powerpipe control run terraform_aws_compliance.control.cloudwatch_log_group_retention_period_365
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run terraform_aws_compliance.control.cloudwatch_log_group_retention_period_365 --share
SQL
This control uses a named query:
select address as resource, case when (attributes_std -> 'retention_in_days') is null or (attributes_std -> 'retention_in_days')::int < 365 then 'alarm' else 'ok' end status, split_part(address, '.', 2) || case when (attributes_std -> 'retention_in_days') is null then ' retention period not set' when (attributes_std -> 'retention_in_days')::int < 365 then ' retention period less than 365 days' else ' retention period 365 days or above' end || '.' reason , path || ':' || start_linefrom terraform_resourcewhere type = 'aws_cloudwatch_log_group';