从诊断设置存储保留迁移到 Azure 存储生命周期管理

诊断设置存储保留功能即将弃用。 要配置发送到 Azure 存储帐户的日志和指标的保留期,请使用 Azure 存储生命周期管理。

本指南指导你从使用 Azure 诊断设置存储保留迁移到使用 Azure 存储生命周期管理进行保留。 对于发送到 Log Analytics 工作区的日志,会在工作区的“”页上为每个表设置保留期。 有关 Log Analytics 工作区保留的详细信息,请参阅管理 Log Analytics 工作区中的数据保留

重要

弃用时间线。

  • 2023 年 3 月 31 日 - 诊断设置存储保留功能将不再可用于为日志数据配置新的保留规则。 这包括使用门户、CLI PowerShell 以及 ARM 和 Bicep 模板。 即使已配置保留设置,仍可以在门户中查看和更改它们。
  • 2025 年 9 月 30 日 - 将在所有环境中禁用诊断设置存储保留功能的所有保留功能。

先决条件

记录到存储帐户的现有诊断设置。

迁移过程

注意

  • 更改保留设置时,新设置仅适用于更改后引入的新日志。 现有日志受以前的保留设置约束。
  • 删除诊断设置不会删除存储帐户中的日志。 保留设置将继续应用于在删除诊断设置之前创建的日志。

使用以下 CLI 命令检查资源是否有诊断设置:

 az monitor diagnostic-settings list --resource <resource Id>

输出结果显示诊断设置是否将数据发送到存储帐户,例如:

[
  {
    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-001/providers/microsoft.insights/datacollectionrules/dcr-east2/providers/microsoft.insights/diagnosticSettings/dsetting-1",
    "logs": [
      {
        "categoryGroup": "allLogs",
        "enabled": true,
        "retentionPolicy": {
          "days": 0,
          "enabled": false
        }
      }
    ],
    "metrics": [
      {
        "category": "AllMetrics",
        "enabled": false,
        "retentionPolicy": {
          "days": 0,
          "enabled": false
        }
      }
    ],
    "name": "dsetting-1",
    "resourceGroup": "rg-001",
    "storageAccountId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-DCR/providers/Microsoft.Storage/storageAccounts/logs001",
    "type": "Microsoft.Insights/diagnosticSettings"
  }
]

若要迁移诊断设置保留规则,请执行以下步骤:

  1. 转到日志记录资源的“诊断设置”页,找到要迁移的诊断设置

  2. 将记录类别的保留期设置为“0”

  3. 选择“保存”显示“诊断设置”页的屏幕截图。

  4. 导航到要登录到的存储帐户

  5. 在“数据管理”下,选择“生命周期管理”以查看或更改生命周期管理策略

  6. 选择“列表视图”,然后选择“添加规则”显示存储帐户“生命周期管理”屏幕的屏幕截图。

  7. 输入“规则名称”

  8. 在“规则范围”下,选择“使用筛选器限制 blob”

  9. 在“Blob 类型”下,选择“追加 Blob”。在“Blob 子类型”下,选择“基本 Blob”。

  10. 选择“下一步”显示用于添加生命周期规则的“详细信息”选项卡的屏幕截图。

  11. 设置保留时间,然后选择“下一步”显示用于添加生命周期规则的“基本 blob”选项卡的屏幕截图。

  12. 在“筛选器”选项卡的“Blob 前缀”下,设置你希望应用保留规则的容器或日志的路径或前缀。 路径或前缀可以是容器中的任何级别,并将应用于该路径或前缀下的所有 blob。 例如,对于所有见解活动日志,请使用容器 insights-activity-logs 来设置该容器中所有日志的保留期。
    若要为特定 Web 应用设置规则,请使用 insights-activity-logs/ResourceId=/SUBSCRIPTIONS/<your subscription Id>/RESOURCEGROUPS/<your resource group>/PROVIDERS/MICROSOFT.WEB/SITES/<your webapp name>

    可使用存储浏览器帮助查找路径或前缀。
    下面的示例显示了特定 Web 应用的前缀:*insights-activity-logs/ResourceId=/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/rg-001/PROVIDERS/MICROSOFT.WEB/SITES/appfromdocker1。
    若要为资源组中的所有资源设置规则,请使用 insights-activity-logs/ResourceId=/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e7/RESOURCEGROUPS/rg-001存储浏览器和资源路径的屏幕截图。

  13. 选择“添加”以保存规则。 显示用于添加生命周期规则的“筛选器”选项卡的屏幕截图。

后续步骤

配置生命周期管理策略