Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
在 Azure Monitor 中创建和编辑诊断设置,以将 Azure 平台指标和日志发送到不同的目标,例如 Azure Monitor 日志、Azure 存储或 Azure 事件中心。 可以使用不同的方法(例如 Azure 门户、Azure CLI、PowerShell 和 Azure 资源管理器)来处理诊断设置。
重要
在“诊断设置”中设置的保留策略现已弃用,不能再使用。 使用 Azure 存储生命周期策略管理日志保留的时间长度。 有关详细信息,请参阅将诊断设置存储保留迁移到 Azure 存储生命周期管理
- Azure 门户
- PowerShell
- CLI
- 资源管理器
- REST API
- Azure Policy
可以在 Azure 门户中通过“Azure Monitor”菜单或资源菜单配置诊断设置。
在 Azure 门户中配置诊断设置的位置取决于资源:
对于单项资源,在资源菜单中的“监视”下,选择“诊断设置”。
对于一项或多项资源,在 Azure Monitor 菜单中,选择“设置”下的“诊断设置”,然后选择相应资源。
对于活动日志,在“Azure Monitor”菜单中选择“活动日志”,然后选择“导出活动日志”。 请确保禁用活动日志的任何旧配置。 有关说明,请参阅禁用现有设置。
如果选定的资源上不存在任何设置,系统会提示你创建设置。 选择“添加诊断设置”。
如果资源上有现有的设置,则会看到已配置的设置列表。 若要添加新设置,请选择“添加诊断设置”。 或者,选择“编辑设置”以编辑现有设置。 每个设置最多只能包含一个目标类型。
为设置指定名称(如果未指定)。
要路由的日志和指标:对于日志,请选择一个类别组,或选中要发送到后续指定目标的每个数据类别对应的各个复选框。 每种 Azure 服务的类别列表各不相同。 如果还要将指标存储到 Azure Monitor 日志中,请选择“AllMetrics”。
目标详细信息:选中每个目标对应的复选框。 此时将显示多个选项,以便添加更多信息。
发送到 Log Analytics 工作区:选择你的订阅和要向其发送数据的 Log Analytics 工作区。 如果没有工作区,则必须在继续操作之前创建一个。
存档到存储帐户:选择你的订阅和用于存储数据的存储帐户。
小窍门
使用 Azure 存储生命周期策略管理日志保留的时间长度。 在“诊断设置”中设置的保留策略现已弃用。
流式传输到事件中心:指定以下条件:
- 订阅:事件中心所属的订阅。
- 事件中心命名空间:如果没有,则必须创建一个。
- 事件中心名称(可选):将所有数据发送到的名称。 如果未指定名称,将为每个日志类别创建一个事件中心。 如果发送多个类别,可能需要指定一个名称来限制创建的事件中心数。 有关详细信息,请参阅 Azure 事件中心的配额和限制。
- 事件中心策略名称(可选):策略定义流式处理机制具有的权限。 有关详细信息,请参阅事件中心功能。
发送到合作伙伴解决方案:必须先在订阅中安装 Azure 本机 ISV 服务。
如果服务同时支持特定于资源模式和 Azure 诊断模式,则在选择“Log Analytics 工作区”作为目标时,会显示用于选择目标表的选项。 通常应选择特定于资源,因为表结构支持更大的灵活性和更高效的查询。
选择“保存”。
几分钟后,新设置将出现在此资源的设置列表中。 生成新的事件数据时,日志会流式传输到指定目标。 发出事件后可能需要长达 15 分钟的时间该事件才会出现在 Log Analytics 工作区中。
故障排除
指标类别不受支持
部署诊断设置时,你会收到一条错误消息,类似于“指标类别‘xxxx’不受支持”。 即使以前的部署成功,也可能会收到此错误。
在使用资源管理器模板、REST API、Azure CLI 或 Azure PowerShell 时,会出现此问题。 通过 Azure 门户创建的诊断设置将不受影响,因为只会显示受支持的类别名称。
除了少数 Azure 服务外,不支持除 AllMetrics
之外的指标类别。 以前在部署诊断设置时,其他类别名称会被忽略,并被重定向到 AllMetrics
。 截至 2021 年 2 月,所提供的指标类别已经过验证。 此更改导致一些部署失败。
要解决此问题,请更新部署以删除除 AllMetrics
之外的所有指标类别名称。 如果部署添加多个类别,则只使用一个 AllMetrics
类别。 如果仍出现此问题,请通过 Azure 门户联系 Azure 支持。
由于 resourceID 中包含非 ASCII 字符,设置消失
诊断设置不支持包含非 ASCII 字符的 resourceID(例如,Preproduccón)。 由于无法重命名 Azure 中的资源,因此必须创建不包含非 ASCII 字符的新资源。 如果字符位于资源组中,可以将资源移动到新组。
数据重复或丢失的可能性
会尽一切努力确保所有日志数据都正确发送到你的目标,但不可能保证终结点之间 100% 的日志数据传输。 已建立重试和其他机制来解决这些问题,并尝试确保日志数据到达终结点。
非活动资源
当资源处于不活动状态并导出零值指标时,诊断设置导出机制会以增量方式进行退避,以避免导出和存储零值所带来的不必要成本。 退避可能会导致下一个非零值的导出延迟。
当资源处于非活动状态一小时后,导出机制的频率会降低到每 15 分钟一次。 这意味着导出下一个非零值可能会有长达 15 分钟的延迟。 处于非活动状态七天后,会达到两小时的最大退避时间。 一旦资源开始导出非零值,导出机制就会恢复到原来的三分钟导出延迟。
此行为仅适用于导出的指标,不会影响基于指标的警报或自动缩放。
启用诊断设置后,为何在 Application Insights 中看到重复的遥测数据?
启用诊断设置以将基于工作区的 Application Insights 数据导出到任何 Log Analytics 工作区(包括已存储 Application Insights 数据的工作区)时,查询将返回重复的结果。 发生这种重复,因为默认管道和诊断设置都会向工作区发送相同的数据。
为了避免重复遥测数据,请不要将诊断设置配置为将数据发送到同一工作区。 如果需要将数据导出到其他工作区,请使用具有转换和自定义表的数据收集规则(DCR)。 此设置在引入之前筛选数据,并阻止查询中的重复记录。