Översikt över hanteringskommandon
I den här artikeln beskrivs de hanteringskommandon, även kallade kontrollkommandon, som används för att hantera Kusto. Hanteringskommandon är begäranden till tjänsten om att hämta information som inte nödvändigtvis är data i databastabellerna eller ändra tjänsttillståndet osv.
Differentiering av hanteringskommandon från frågor
Kusto använder tre mekanismer för att särskilja frågor och hanteringskommandon: på språknivå, på protokollnivå och på API-nivå. Detta görs av säkerhetsskäl.
På språknivå avgör det första tecknet i texten i en begäran om begäran är ett hanteringskommando eller en fråga. Hanteringskommandon måste börja med punkttecknet (.
) och ingen fråga kan börja med det tecknet.
På protokollnivå används olika HTTP/HTTPS-slutpunkter för kontrollkommandon i stället för frågor.
På API-nivå används olika funktioner för att skicka hanteringskommandon i stället för frågor.
Kombinera frågor och hanteringskommandon
Hanteringskommandon kan referera till frågor (men inte tvärtom) eller andra hanteringskommandon. Det finns flera scenarier som stöds:
- AdminThenQuery: Ett hanteringskommando körs och resultatet (representeras som en tillfällig datatabell) fungerar som indata till en fråga.
- AdminFromQuery: Antingen körs en fråga eller ett
.show
administratörskommando och resultatet (representeras som en tillfällig datatabell) fungerar som indata till ett hanteringskommando.
Observera att i samtliga fall är hela kombinationen tekniskt sett ett hanteringskommando, inte en fråga, så texten i begäran måste börja med ett punkttecken (.
) och begäran måste skickas till tjänstens hanteringsslutpunkt.
Observera även att frågeuttryck visas i textens frågedel (de kan inte komma före själva kommandot).
Anteckning
Vi rekommenderar att du begränsar användningen av AdminThenQuery-åtgärder .
AdminThenQuery anges på ett av två sätt:
- Genom att använda ett pipe-tecken (
|
) behandlar frågan därför resultatet av hanteringskommandot som om det vore någon annan dataproducerande frågeoperator. - Genom att använda ett semikolontecken (
;
) som sedan introducerar resultatet av hanteringskommandot till en särskild symbol med namnet$command_results
, som man sedan kan använda i frågan valfritt antal gånger.
Ett exempel:
// 1. Using pipe: Count how many tables are in the database-in-scope:
.show tables
| count
// 2. Using semicolon: Count how many tables are in the database-in-scope:
.show tables;
$command_results
| count
// 3. Using semicolon, and including a let statement:
.show tables;
let useless=(n:string){strcat(n,'-','useless')};
$command_results | extend LastColumn=useless(TableName)
AdminFromQuery anges av kombinationen av <|
-tecken. I följande exempel kör vi först en fråga som skapar en tabell med en enskild kolumn (med namnet str
och typen string
) samt en enskild rad och skriver den som tabellnamnet MyTable
i databasen i kontext:
.set MyTable <|
let text="Hello, World!";
print str=text
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