Partilhar via


Clusters/bancos de dados/scripts Microsoft.Kusto 2024-04-13

Definição de recursos do bíceps

O tipo de recurso clusters/databases/scripts pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Kusto/clusters/databases/scripts, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.Kusto/clusters/databases/scripts@2024-04-13' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    continueOnErrors: bool
    forceUpdateTag: 'string'
    principalPermissionsAction: 'string'
    scriptContent: 'string'
    scriptLevel: 'string'
    scriptUrl: 'string'
    scriptUrlSasToken: 'string'
  }
}

Valores de propriedade

Microsoft.Kusto/clusters/databases/scripts

Designação Descrição Valor
Designação O nome do recurso cadeia de caracteres

Restrições:
Padrão = ^.*$ (obrigatório)
elemento principal No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte recurso filho fora do recurso pai.
Nome simbólico para recurso do tipo: clusters/bancos de dados
propriedades O script de banco de dados. ScriptProperties

ScriptProperties

Designação Descrição Valor
continueOnErrors Sinalizador que indica se um dos comandos deve continuar se um dos comandos falhar. Bool
forceUpdateTag Uma cadeia de caracteres única. Se alterado, o script será aplicado novamente. cadeia (de caracteres)
principalPermissionsAction Indica se as permissões para o chamador de script são mantidas após a conclusão do script. 'RemovePermissionOnScriptCompletion'
'RetainPermissionOnScriptCompletion'
scriptContent O conteúdo do script. Essa propriedade deve ser usada quando o script é fornecido em linha e não através do arquivo em uma SA. Não deve ser usado em conjunto com as propriedades scriptUrl e scriptUrlSasToken. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.
scriptLevel Diferencia entre o tipo de comandos de script incluídos - Banco de Dados ou Cluster. O padrão é Banco de dados. 'Aglomeração'
'Base de dados'
scriptUrl A url para o arquivo de blob de script KQL. Não deve ser usado junto com a propriedade scriptContent cadeia (de caracteres)
scriptUrlSasToken O token SaS que fornece acesso de leitura ao arquivo que contém o script. Deve ser fornecido ao usar a propriedade scriptUrl. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Exemplos de uso

Exemplos de início rápido do Azure

Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Descrição
Implantar o Banco de Dados do Azure Data Explorer com o de conexão do Cosmos DB Implante o Banco de Dados do Azure Data Explorer com conexão do Cosmos DB.
Implantar o banco de dados do Azure Data Explorer com conexão de Grade de Eventos Implante o banco de dados do Azure Data Explorer com conexão de Grade de Eventos.
Implantar o banco de dados do Azure Data Explorer com o de conexão do Hub de Eventos Implante o banco de dados do Azure Data Explorer com conexão do Hub de Eventos.
Hub FinOps Este modelo cria uma nova instância de hub FinOps, incluindo Data Explorer, armazenamento Data Lake e Data Factory.

Definição de recurso de modelo ARM

O tipo de recurso clusters/databases/scripts pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Kusto/clusters/databases/scripts, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.Kusto/clusters/databases/scripts",
  "apiVersion": "2024-04-13",
  "name": "string",
  "properties": {
    "continueOnErrors": "bool",
    "forceUpdateTag": "string",
    "principalPermissionsAction": "string",
    "scriptContent": "string",
    "scriptLevel": "string",
    "scriptUrl": "string",
    "scriptUrlSasToken": "string"
  }
}

Valores de propriedade

Microsoft.Kusto/clusters/databases/scripts

Designação Descrição Valor
Versão da API A versão api '2024-04-13'
Designação O nome do recurso cadeia de caracteres

Restrições:
Padrão = ^.*$ (obrigatório)
propriedades O script de banco de dados. ScriptProperties
tipo O tipo de recurso 'Microsoft.Kusto/clusters/databases/scripts'

ScriptProperties

Designação Descrição Valor
continueOnErrors Sinalizador que indica se um dos comandos deve continuar se um dos comandos falhar. Bool
forceUpdateTag Uma cadeia de caracteres única. Se alterado, o script será aplicado novamente. cadeia (de caracteres)
principalPermissionsAction Indica se as permissões para o chamador de script são mantidas após a conclusão do script. 'RemovePermissionOnScriptCompletion'
'RetainPermissionOnScriptCompletion'
scriptContent O conteúdo do script. Essa propriedade deve ser usada quando o script é fornecido em linha e não através do arquivo em uma SA. Não deve ser usado em conjunto com as propriedades scriptUrl e scriptUrlSasToken. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.
scriptLevel Diferencia entre o tipo de comandos de script incluídos - Banco de Dados ou Cluster. O padrão é Banco de dados. 'Aglomeração'
'Base de dados'
scriptUrl A url para o arquivo de blob de script KQL. Não deve ser usado junto com a propriedade scriptContent cadeia (de caracteres)
scriptUrlSasToken O token SaS que fornece acesso de leitura ao arquivo que contém o script. Deve ser fornecido ao usar a propriedade scriptUrl. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Exemplos de uso

Modelos de início rápido do Azure

Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.

Modelo Descrição
Implantar o Banco de Dados do Azure Data Explorer com o de conexão do Cosmos DB

Implantar no Azure
Implante o Banco de Dados do Azure Data Explorer com conexão do Cosmos DB.
Implantar o banco de dados do Azure Data Explorer com conexão de Grade de Eventos

Implantar no Azure
Implante o banco de dados do Azure Data Explorer com conexão de Grade de Eventos.
Implantar o banco de dados do Azure Data Explorer com o de conexão do Hub de Eventos

Implantar no Azure
Implante o banco de dados do Azure Data Explorer com conexão do Hub de Eventos.
Hub FinOps

Implantar no Azure
Este modelo cria uma nova instância de hub FinOps, incluindo Data Explorer, armazenamento Data Lake e Data Factory.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso clusters/databases/scripts pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Kusto/clusters/databases/scripts, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Kusto/clusters/databases/scripts@2024-04-13"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      continueOnErrors = bool
      forceUpdateTag = "string"
      principalPermissionsAction = "string"
      scriptContent = "string"
      scriptLevel = "string"
      scriptUrl = "string"
      scriptUrlSasToken = "string"
    }
  }
}

Valores de propriedade

Microsoft.Kusto/clusters/databases/scripts

Designação Descrição Valor
Designação O nome do recurso cadeia de caracteres

Restrições:
Padrão = ^.*$ (obrigatório)
parent_id A ID do recurso que é o pai para este recurso. ID para recurso do tipo: clusters/bancos de dados
propriedades O script de banco de dados. ScriptProperties
tipo O tipo de recurso "Microsoft.Kusto/clusters/databases/scripts@2024-04-13"

ScriptProperties

Designação Descrição Valor
continueOnErrors Sinalizador que indica se um dos comandos deve continuar se um dos comandos falhar. Bool
forceUpdateTag Uma cadeia de caracteres única. Se alterado, o script será aplicado novamente. cadeia (de caracteres)
principalPermissionsAction Indica se as permissões para o chamador de script são mantidas após a conclusão do script. 'RemovePermissionOnScriptCompletion'
'RetainPermissionOnScriptCompletion'
scriptContent O conteúdo do script. Essa propriedade deve ser usada quando o script é fornecido em linha e não através do arquivo em uma SA. Não deve ser usado em conjunto com as propriedades scriptUrl e scriptUrlSasToken. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.
scriptLevel Diferencia entre o tipo de comandos de script incluídos - Banco de Dados ou Cluster. O padrão é Banco de dados. 'Aglomeração'
'Base de dados'
scriptUrl A url para o arquivo de blob de script KQL. Não deve ser usado junto com a propriedade scriptContent cadeia (de caracteres)
scriptUrlSasToken O token SaS que fornece acesso de leitura ao arquivo que contém o script. Deve ser fornecido ao usar a propriedade scriptUrl. cadeia de caracteres

Restrições:
Valor sensível. Passe como um parâmetro seguro.

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação do Kusto Script.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "cluster" {
  type      = "Microsoft.Kusto/clusters@2023-05-02"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  identity {
    type         = "SystemAssigned"
    identity_ids = []
  }
  body = {
    properties = {
      enableAutoStop                = true
      enableDiskEncryption          = false
      enableDoubleEncryption        = false
      enablePurge                   = false
      enableStreamingIngest         = false
      engineType                    = "V2"
      publicIPType                  = "IPv4"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      trustedExternalTenants = [
      ]
    }
    sku = {
      capacity = 1
      name     = "Dev(No SLA)_Standard_D11_v2"
      tier     = "Basic"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Kusto/clusters/databases@2023-05-02"
  parent_id = azapi_resource.cluster.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "ReadWrite"
    properties = {
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "script" {
  type      = "Microsoft.Kusto/clusters/databases/scripts@2023-05-02"
  parent_id = azapi_resource.database.id
  name      = "create-table-script"
  body = {
    properties = {
      continueOnErrors = false
      forceUpdateTag   = "9e2e7874-aa37-7041-81b7-06397f03a37d"
      scriptContent    = ".create table TestTable(Id:string, Name:string, _ts:long, _timestamp:datetime)\n.create table TestTable ingestion json mapping \"TestMapping\"\n'['\n'    {\"column\":\"Id\",\"path\":\"$.id\"},'\n'    {\"column\":\"Name\",\"path\":\"$.name\"},'\n'    {\"column\":\"_ts\",\"path\":\"$._ts\"},'\n'    {\"column\":\"_timestamp\",\"path\":\"$._ts\", \"transform\":\"DateTimeFromUnixSeconds\"}'\n']'\n.alter table TestTable policy ingestionbatching \"{'MaximumBatchingTimeSpan': '0:0:10', 'MaximumNumberOfItems': 10000}\"\n"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Um exemplo básico de implantação do Kusto Script.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "cluster" {
  type      = "Microsoft.Kusto/clusters@2023-05-02"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  identity {
    type         = "SystemAssigned"
    identity_ids = []
  }
  body = {
    properties = {
      enableAutoStop                = true
      enableDiskEncryption          = false
      enableDoubleEncryption        = false
      enablePurge                   = false
      enableStreamingIngest         = false
      engineType                    = "V2"
      publicIPType                  = "IPv4"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      trustedExternalTenants = [
      ]
    }
    sku = {
      capacity = 1
      name     = "Dev(No SLA)_Standard_D11_v2"
      tier     = "Basic"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Kusto/clusters/databases@2023-05-02"
  parent_id = azapi_resource.cluster.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "ReadWrite"
    properties = {
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "script" {
  type      = "Microsoft.Kusto/clusters/databases/scripts@2023-05-02"
  parent_id = azapi_resource.database.id
  name      = "create-table-script"
  body = {
    properties = {
      continueOnErrors = false
      forceUpdateTag   = "9e2e7874-aa37-7041-81b7-06397f03a37d"
      scriptContent    = ".create table TestTable(Id:string, Name:string, _ts:long, _timestamp:datetime)\n.create table TestTable ingestion json mapping \"TestMapping\"\n'['\n'    {\"column\":\"Id\",\"path\":\"$.id\"},'\n'    {\"column\":\"Name\",\"path\":\"$.name\"},'\n'    {\"column\":\"_ts\",\"path\":\"$._ts\"},'\n'    {\"column\":\"_timestamp\",\"path\":\"$._ts\", \"transform\":\"DateTimeFromUnixSeconds\"}'\n']'\n.alter table TestTable policy ingestionbatching \"{'MaximumBatchingTimeSpan': '0:0:10', 'MaximumNumberOfItems': 10000}\"\n"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}