我想恢复或防止删除 Amazon CloudWatch 中的日志或日志组。
简短描述
默认情况下,CloudWatch 日志会无限期地存储。此外,默认情况下,日志组是在留存设置中使用 NeverExpire 创建的。您可以将留存设置配置为希望将日志数据存储在日志组中的时间段。设置新的日志组留存设置时,早于新留存设置的数据将从日志组中删除。
**注意:**如果由于留存设置或手动删除而删除日志,则无法恢复。
解决方法
为防止意外删除 CloudWatch 日志或导出日志以进行长期存储和备份,请按以下方法完成操作:
修改 CloudWatch 日志组的 IAM 权限
为防止意外删除 CloudWatch 日志,请修改您的 AWS Identity and Access Management (IAM) 权限。在权限策略中将 DeleteLogGroup、DeleteLogStream 和 PutRetentionPolicy 参数设置为 Deny,以防止删除日志数据。
完成以下步骤:
- 打开 IAM 控制台。
- 在导航窗格中,选择 Users or Roles(用户或角色)。
- 从列表中选择要修改策略的用户或角色的名称。
- 依次选择 Permissions(权限)选项卡、Add permissions(添加权限)和 Create inline policy(创建内联策略)。
- 添加以下策略语句或类似内容:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Deny",
"Action": [
"logs:DeleteLogGroup",
"logs:DeleteLogStream",
"logs:PutRetentionPolicy"
],
"Resource": "*"
}
]
}
有关详细信息,请参阅对 CloudWatch Logs 使用基于身份的策略(IAM 策略)和 CloudWatch Logs 权限参考。
将 CloudWatch 日志导出到 Amazon S3 存储桶
要长期存储、备份以及自定义处理和分析日志数据,请将 CloudWatch 日志导出到 Amazon S3。您也可以将这些数据加载到其他系统上。有关详细信息,请参阅将日志数据导出到 Amazon S3。
相关信息
CloudWatch Logs 功能