Compartilhar via


Comando .create function

Aplica-se a: ✅Microsoft FabricAzure Data Explorer

Cria uma função armazenada, que é uma consulta KQL reutilizável, com o nome fornecido. A definição da função é mantida com os metadados do banco de dados.

As funções podem chamar outras funções (não há suporte para recursividade). Além disso, let as instruções são permitidas como parte do Corpo da Função. Veja let as declarações.

As regras para tipos de parâmetro e instruções CSL são as mesmas que para let instruções.

Permissões

Você deve ter pelo menos permissões de Usuário do Banco de Dados para executar este comando.

Sintaxe

.createfunction ifnotexists [ ] [with (propertyName = propertyValue [, ...] ] )functionName( parâmetros) { corpo }

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
ifnotexists string Se especificada, a função só será criada se a função ainda não existir.
functionName string ✔️ O nome da função a ser criada ou alterada.
propertyName, propertyValue string Uma lista separada por vírgulas de pares de propriedades chave-valor. Consulte as propriedades suportadas.
parameters string Uma lista separada por vírgulas de parâmetros exigidos pela função. O formato de cada parâmetro deve ser ParameterName:ParameterDataType.
Corpo string ✔️ Uma expressão de função definida pelo usuário.

Propriedades aceitas

Nome Tipo Descrição
docstring string Uma descrição da função para fins de interface do usuário.
folder string O nome de uma pasta usada para categorização de funções de interface do usuário.
view bool Designa essa função como uma exibição armazenada. As exibições armazenadas podem participar de cenários de pesquisa e união * . Para obter mais informações, consulte Exibições.
skipvalidation bool Determina se a lógica de validação deve ou não ser executada na função e falhar no processo se a função não for válida. O padrão é false.

Dica

Se uma função envolver consultas entre clusters e você planeja recriá-la usando um script Kusto Query Language, defina skipvalidation como true.

Devoluções

Parâmetro de saída Tipo Descrição
Nome string O nome da função.
Parâmetros string Os parâmetros exigidos pela função.
Corpo string (Zero ou mais) let seguidas por uma expressão CSL válida que é avaliada na invocação da função.
Pasta string Uma pasta usada para categorização de funções de interface do usuário. Esse parâmetro não altera a maneira como a função é invocada.
DocString string Uma descrição da função para fins de interface do usuário.

Observação

  • Se a função já existir:
    • Se ifnotexists flag for especificado, o comando será ignorado (nenhuma alteração aplicada).
    • Se ifnotexists o sinalizador NÃO for especificado, um erro será retornado.
    • Para alterar uma função existente, consulte .alter function
  • Nem todos os tipos de dados são suportados em let instruções. Os tipos com suporte são: booleano, cadeia de caracteres, long, datetime, timespan, double e dynamic.
  • Use skipvalidation para ignorar a validação semântica da função. Isso é útil quando as funções são criadas em uma ordem incorreta e F1 que usa F2 é criado anteriormente.

Exemplos

Função de demonstração simples

O exemplo a seguir cria a MyFunction1 função com uma descrição (docstring), uma pasta chamada Demo, e define a função.

.create function 
with (docstring = 'Simple demo function', folder='Demo')
MyFunction1()
{StormEvents | take 100}
Nome Parâmetros Corpo Pasta DocString
MinhaFunção1 () {StormEvents | take 100} Demonstração Função de demonstração simples

Função de demonstração com parâmetro

O exemplo a seguir cria a função MyFunction2 com uma descrição (docstring), pasta chamada Demo, e define o MyLimit parâmetro.

.create function
with (docstring = 'Demo function with parameter', folder='Demo')
 MyFunction2(myLimit: long)
{StormEvents | take myLimit}
Nome Parâmetros Corpo Pasta DocString
MinhaFunção2 (meuLimite: longo) {StormEvents | take myLimit} Demonstração Função de demonstração com parâmetro