.create-funktionskommando
Skapar en lagrad funktion, som är en återanvändbar KQL-fråga med det angivna namnet. Funktionsdefinitionen sparas med databasmetadata.
Funktioner kan anropa andra funktioner (rekursivitet stöds inte). Dessutom tillåts let
-instruktioner som en del av funktionstexten. Se let
instruktioner.
Regler för parametertyper och CSL-instruktioner är desamma som för let
-instruktioner.
Behörigheter
Du måste ha minst behörighet för databasanvändare för att kunna köra det här kommandot.
Syntax
.create
function
[ ifnotexists
] [ with
(
propertyName=
propertyValue [,
...])
] functionName(
Parametrar)
{
Kroppen}
Läs mer om syntaxkonventioner.
Parametrar
Namn | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
ifnotexists |
string |
Om det anges skapas funktionen endast om funktionen inte finns ännu. | |
functionName | string |
✔️ | Namnet på funktionen som ska skapas eller ändras. |
propertyName, propertyValue | string |
En kommaavgränsad lista över nyckel/värde-egenskapspar. Se egenskaper som stöds. | |
parameters | string |
En kommaavgränsad lista över parametrar som krävs av funktionen. Formatet för varje parameter måste vara ParameterName: ParameterDataType. |
|
Kroppen | string |
✔️ | Ett användardefinierat funktionsuttryck. |
Egenskaper som stöds
Namn | Typ | Description |
---|---|---|
docstring |
string |
En beskrivning av funktionen i användargränssnittssyfte. |
folder |
string |
Namnet på en mapp som används för kategorisering av gränssnittsfunktioner. |
view |
bool |
Anger den här funktionen som en lagrad vy. Lagrade vyer kan delta i sök- och union* -scenarier. Mer information finns i Vyer. |
skipvalidation |
bool |
Avgör om valideringslogik ska köras på funktionen eller inte och processen misslyckas om funktionen inte är giltig. Standardvärdet är false . |
Tips
Om en funktion omfattar frågor mellan kluster och du planerar att återskapa funktionen med hjälp av ett Kusto-frågespråk skript anger du skipvalidation
till true
.
Returer
Utdataparameter | Typ | Beskrivning |
---|---|---|
Name | string |
Namnet på funktionen. |
Parametrar | string |
De parametrar som krävs av funktionen. |
Brödtext | string |
(Noll eller mer) let -instruktioner följt av ett giltigt CSL-uttryck som utvärderas vid funktionsanrop. |
Mapp | string |
En mapp som används för kategorisering av gränssnittsfunktioner. Den här parametern ändrar inte hur funktionen anropas. |
DocString | string |
En beskrivning av funktionen i användargränssnittssyfte. |
Anteckning
- Om funktionen redan finns:
- Om
ifnotexists
flaggan anges ignoreras kommandot (ingen ändring tillämpas). - Om
ifnotexists
flaggan INTE anges returneras ett fel. - Information om hur du ändrar en befintlig funktion finns i
.alter function
- Om
- Alla datatyper stöds inte i
let
instruktioner. Typer som stöds är: boolesk, sträng, lång, datetime, tidsintervall, dubbel och dynamisk. - Använd
skipvalidation
för att hoppa över semantisk validering av funktionen. Detta är användbart när funktioner skapas i en felaktig ordning och F1 som använder F2 skapas tidigare.
Exempel
Enkel demofunktion
.create function
with (docstring = 'Simple demo function', folder='Demo')
MyFunction1() {StormEvents | take 100}
Name | Parametrar | Brödtext | Mapp | DocString |
---|---|---|---|---|
MyFunction1 | () | {StormEvents | take 100} | Demo | Enkel demofunktion |
Demofunktion med parameter
.create function
with (docstring = 'Demo function with parameter', folder='Demo')
MyFunction2(myLimit: long) {StormEvents | take myLimit}
Name | Parametrar | Brödtext | Mapp | DocString |
---|---|---|---|---|
MyFunction2 | (myLimit:long) | {StormEvents | take myLimit} | Demo | Demofunktion med parameter |
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för