使用 Terraform 启用活动日志诊断设置

问题描述

目前有一个模块可以为链接 here 的 Azure 资源创建日志诊断设置。使用门户,我能够为活动日志以及提到的 here 生成日志诊断设置。我试图启用活动日志诊断设置并将日志发送到存储帐户,但只遇到了这个 module

但是,似乎无法使用此模块将活动日志发送到日志分析工作区。它也不支持门户中提到的日志类别(即 AdministrativeSecurityServiceHealth 等),仅提供 ActionDeleteWrite。这使我相信它们并非旨在用于同一目的。第一个模块需要 target_resource_id,并且由于订阅级别中存在活动日志,因此不存在此类 ID。

因此,是否可以使用第一个提到的模块或完全不同的模块来启用诊断设置?任何有关此事的帮助将不胜感激

解决方法

您可以通过将订阅 ID 指定为 azurerm_monitor_diagnostic_setting 资源中的 target_resource_id 来进行配置。

示例:

resource "azurerm_monitor_diagnostic_setting" "example" {
    name                           = "example"
    target_resource_id             = "/subscriptions/85306735-db49-41be-b899-b0fc48095b01"

    eventhub_name = azurerm_eventhub.diagnostics.name
    eventhub_authorization_rule_id = azurerm_eventhub_namespace_authorization_rule.diagnostics.id

    log {
        category = "Administrative"

        retention_policy {
        enabled = false
    }
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...