Kör ett hanteringskommando och bearbeta resultatet
I önskad IDE eller textredigerare skapar du ett projekt eller en fil med namnet hanteringskommandon med den konvention som är lämplig för önskat språk. Lägg sedan till följande kod:
Skapa en klientapp som ansluter ditt kluster. <your_cluster_uri> Ersätt platshållaren med klusternamnet.
För hanteringskommandon använder CreateCslAdminProvider du metoden client factory.
using Kusto.Data;
using Kusto.Data.Net.Client;
namespace ManagementCommands {
class ManagementCommands {
static void Main(string[] args) {
var clusterUri = "<your_cluster_uri>";
var kcsb = new KustoConnectionStringBuilder(clusterUri)
.WithAadUserPromptAuthentication();
using (var kustoClient = KustoClientFactory.CreateCslAdminProvider(kcsb)) {
}
}
}
}
from azure.kusto.data import KustoClient, KustoConnectionStringBuilder
def main():
cluster_uri = "<your_cluster_uri>"
kcsb = KustoConnectionStringBuilder.with_interactive_login(cluster_uri)
with KustoClient(kcsb) as kusto_client:
if __name__ == "__main__":
main()
import { Client as KustoClient, KustoConnectionStringBuilder } from "azure-kusto-data/";
import { InteractiveBrowserCredentialInBrowserOptions } from "@azure/identity";
async function main() {
const clusterUri = "<your_cluster_uri>";
const authOptions = {
clientId: "5e39af3b-ba50-4255-b547-81abfb507c58",
redirectUri: "http://localhost:5173",
} as InteractiveBrowserCredentialInBrowserOptions;
const kcsb = KustoConnectionStringBuilder.withUserPrompt(clusterUri, authOptions);
const kustoClient = new KustoClient(kcsb);
}
main();
Anteckning
För Node.js appar använder du InteractiveBrowserCredentialNodeOptions i stället för InteractiveBrowserCredentialInBrowserOptions.
Definiera en funktion som skriver ut kommandot som körs och dess resulterande tabeller. Den här funktionen packar upp kolumnnamnen i resultattabellerna och skriver ut varje namn/värde-par på en ny rad.
static void PrintResultsAsValueList(string command, IDataReader response) {
while (response.Read()) {
Console.WriteLine("\n{0}\n", new String('-', 20));
Console.WriteLine("Command: {0}", command);
Console.WriteLine("Result:");
for (int i = 0; i < response.FieldCount; i++) {
Console.WriteLine("\t{0} - {1}", response.GetName(i), response.IsDBNull(i) ? "None" : response.GetString(i));
}
}
}
def print_result_as_value_list(command, response):
# create a list of columns
cols = (col.column_name for col in response.primary_results[0].columns)
print("\n" + "-" * 20 + "\n")
print("Command: " + command)
# print the values for each row
for row in response.primary_results[0]:
print("Result:")
for col in cols:
print("\t", col, "-", row[col])
function printResultsAsValueList(command: string, response: KustoResponseDataSet) {
// create a list of columns
const cols = response.primaryResults[0].columns;
console.log("\n" + "-".repeat(20) + "\n")
console.log("Command: " + command)
// print the values for each row
for (const row of response.primaryResults[0].rows()) {
console.log("Result:")
for (col of cols)
console.log("\t", col.name, "-", row.getValueAt(col.ordinal) ? row.getValueAt(col.ordinal).toString() : "None")
}
}
Definiera kommandot som ska köras. Kommandot skapar en tabell med namnet MyStormEvents och definierar tabellschemat som en lista med kolumnnamn och typer. <your_database> Ersätt platshållaren med databasnamnet.
Ändra batchbearbetningsprincipen för inmatning på tabellnivå
Du kan anpassa inmatningens batchbearbetningsbeteende för tabeller genom att ändra motsvarande tabellprincip. Mer information finns i IngestionBatching-princip.
Anteckning
Om du inte anger alla parametrar för ett PolicyObject anges de ospecificerade parametrarna till standardvärden. Om du till exempel bara anger "MaximumBatchingTimeSpan" kommer "MaximumNumberOfItems" och "MaximumRawDataSizeMB" att anges till standard.
Du kan till exempel ändra appen för att ändra tidsgränsvärdet för inmatningsbatchbearbetningsprincipen till 30 sekunder genom att ingestionBatching ändra principen för MyStormEvents tabellen med hjälp av följande kommando:
Du kan använda hanteringskommandon för att visa en databas kvarhållningsprincip.
Du kan till exempel ändra appen så att den visar databasens kvarhållningsprincip med hjälp av följande kod. Resultatet kureras för att projicera bort två kolumner från resultatet:
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: https://aka.ms/ContentUserFeedback.