Dela via


Hello Kusto: Skapa din första app

Gäller för: ✅Microsoft FabricAzure Data Explorer

I den här artikeln lär du dig att:

  • Skapa din första klientapp
  • Använda interaktiv autentisering
  • Kör en grundläggande fråga som skriver ut Hello Kusto!

Förutsättningar

Konfigurera utvecklingsmiljön att använda Kusto-klientbiblioteket.

Skapa din app

I önskad IDE eller textredigerare skapar du ett projekt eller en fil med namnet hello kusto med den konvention som är lämplig för det språk du föredrar. Lägg sedan till följande kod:

  1. Lägg till Kusto-klienten och strängverktygets klasser.

    using Kusto.Data;
    using Kusto.Data.Net.Client;
    
  2. Definiera en tom funktion med namnet main och anropa den.

    namespace HelloKusto {
      class HelloKusto {
        static void Main(string[] args) {
        }
      }
    }
    
  3. Skapa ett anslutningssträngsbyggareobjekt som definierar kluster-URI:n och ställer in autentiseringsläget på interaktivt. Mer information om kluster-URI finns i Kusto-anslutningssträngar.

    var clusterUri = "https://help.kusto.windows.net/";
    var kcsb = new KustoConnectionStringBuilder(clusterUri).WithAadUserPromptAuthentication();
    

    Note

    För interaktiv autentisering behöver du ett Microsoft-konto eller en Microsoft Entra-användaridentitet. En Azure-prenumeration krävs inte.

    I C# kanske den interaktiva autentiseringsprocessen inte frågar användaren om:

    • Användaren är redan autentiserad på enheten
    • Det finns en befintlig Kusto.Explorer- eller Azure Date Explorer-webbgränssnittsautentisering på enheten
  4. Skapa ett klientobjekt som använder anslutningssträngverktygets objekt för att ansluta till klustret.

    Not

    Vi rekommenderar starkt att du cachelagr och återanvänder Kusto-klientinstansen. Att återskapa Kusto-klienter ofta kan leda till prestandaförsämring i ditt program och ökad belastning på klustret.

    using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
    }
    
  5. Definiera databasen och frågan som ska köras. Frågan skriver ut Hello Kusto! i en kolumn med namnet Välkommen.

    var database = "Samples";
    var query = "print Welcome='Hello Kusto!'";
    
  6. Kör frågan och skriv ut resultatet.

    using (var response = kustoClient.ExecuteQuery(database, query, null)) {
      response.Read();
      int columnNo = response.GetOrdinal("Welcome");
      Console.WriteLine(response.GetString(columnNo));
    }
    

    Anmärkning

    Frågeutdata returneras i svaret som ett objekt som innehåller en eller flera tabeller, som består av ytterligare en rad och kolumner. Objektets format beror på klientbiblioteksspråket.

    kusto-fråga returnerar en enskild tabell med en rad och en kolumn.

    Svaret är ett DataReader- objekt. Du kan referera till resultatet enligt följande:

    • Använd metoden Read() för att läsa den första raden
    • Använd metoden GetString() för att hämta värdet för den första kolumnen

Den fullständiga koden bör se ut så här:

using Kusto.Data;
using Kusto.Data.Net.Client;

namespace HelloKusto {
  class HelloKusto {
    static void Main(string[] args) {
      string clusterUri = "https://help.kusto.windows.net/";
      var kcsb = new KustoConnectionStringBuilder(clusterUri).WithAadUserPromptAuthentication();
    
      using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
        string database = "Samples";
        string query = "print Welcome='Hello Kusto!'";

        using (var response = kustoClient.ExecuteQuery(database, query, null)) {
          response.Read();
          int columnNo = response.GetOrdinal("Welcome");
          Console.WriteLine(response.GetString(columnNo));
        }
      }
    }
  }
}

Kör din app

I ett kommandogränssnitt använder du följande kommando för att köra appen:

# Change directory to the folder that contains the hello world project
dotnet run .

Du bör se ett resultat som liknar följande:

Hello Kusto!

Nästa steg