Hello Kusto: Az első alkalmazás létrehozása

Ebben a cikkben az alábbiakkal ismerkedhet meg:

  • Az első ügyfélalkalmazás létrehozása
  • Interaktív hitelesítés használata
  • Futtasson egy alapszintű lekérdezést, amely a Hello Kusto!

Előfeltételek

Állítsa be a fejlesztési környezetet a Kusto ügyfélkódtár használatára.

Az alkalmazás létrehozása

Az előnyben részesített IDE- vagy szövegszerkesztőben hozzon létre egy hello kusto nevű projektet vagy fájlt az előnyben részesített nyelvnek megfelelő konvenció használatával. Ezután írja be a következő kódot:

  1. Adja hozzá a Kusto-ügyfél- és sztringszerkesztő osztályokat.

    using Kusto.Data;
    using Kusto.Data.Net.Client;
    
  2. Definiáljon egy nevű main üres függvényt, és hívja meg.

    namespace HelloKusto {
      class HelloKusto {
        static void Main(string[] args) {
        }
      }
    }
    
  3. Hozzon létre egy kapcsolati karakterlánc builder objektumot, amely meghatározza a fürt URI-t, és interaktívra állítja a hitelesítési módot. A fürt URI-jával kapcsolatos további információkért lásd: Kusto kapcsolati sztringek.

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

    Megjegyzés

    Az interaktív hitelesítéshez Microsoft-fiókra vagy Microsoft Entra felhasználói identitásra van szükség. Nincs szükség Azure-előfizetésre.

    A C#-ban előfordulhat, hogy az interaktív hitelesítési folyamat nem kéri a felhasználót, ha:

    • A felhasználó már hitelesítve van az eszközön
    • Az eszközön létezik egy meglévő Kusto.Explorer- vagy Azure Date Explorer-webes felhasználói felületi hitelesítés
  4. Hozzon létre egy ügyfélobjektumot, amely a kapcsolati karakterlánc builder objektumot használja a fürthöz való csatlakozáshoz.

    Megjegyzés

    Javasoljuk, hogy gyorsítótárazza és használja újra a Kusto-ügyfélpéldányt. A Kusto-ügyfelek gyakori ismételt létrehozása teljesítménycsökkenést okozhat az alkalmazásban, és növelheti a fürt terhelését.

    using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
    }
    
  5. Határozza meg a futtatni kívánt adatbázist és lekérdezést. A lekérdezés a Hello Kusto! fájlt egy Welcome (Üdvözöljük) nevű oszlopban nyomtatja ki.

    var database = "Samples";
    var query = "print Welcome='Hello Kusto!'";
    
  6. Futtassa a lekérdezést, és nyomtassa ki az eredményt.

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

    Megjegyzés

    A lekérdezés kimenete a válaszban egy vagy több táblát tartalmazó objektumként lesz visszaadva, amely még egy sorból és oszlopból áll. Az objektum formátuma az ügyfélkódtár nyelvétől függ.

    A nyomtatási kusto-lekérdezés egyetlen táblát ad vissza egy sorból és oszlopból.

    A válasz egy DataReader-objektum . Az eredményre a következőképpen hivatkozhat:

    • Az első sor olvasása a Read() metódussal
    • Az első oszlop értékének lekéréséhez használja a GetString() metódust

A teljes kódnak így kell kinéznie:

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));
        }
      }
    }
  }
}

Futtassa az alkalmazást

Egy parancshéjban futtassa az alkalmazást a következő paranccsal:

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

Az alábbihoz hasonló eredményt kell látnia:

Hello Kusto!

Következő lépés