Aracılığıyla paylaş


Kusto CLI

Kusto.Cli, Kusto kümesinde sorgular ve denetim komutları göndermeye yönelik bir komut satırı yardımcı programıdır. Birkaç moddan birinde çalıştırılabilir:

  • REPL modu: Kullanıcı sorgular ve komutlar girer ve araç sonuçları görüntüler, ardından sonraki kullanıcı sorgusunu/komutunu bekler. ("REPL", "okuma/değerlendirme/yazdırma/döngü" anlamına gelir.)

  • Yürütme modu: Kullanıcı, komut satırı bağımsız değişkenleri olarak çalıştırmak için bir veya daha fazla sorgu ve komut girer. Bağımsız değişkenler otomatik olarak sırayla çalıştırılır ve sonuçları konsola gönderilir. İsteğe bağlı olarak, tüm giriş sorguları ve komutları çalıştırıldıktan sonra araç REPL moduna geçer.

  • Betik modu: Yürütme moduna benzer, ancak komut satırı bağımsız değişkenleri yerine bir dosyada belirtilen sorgular ve komutlarla ("betik").

Kusto.Cli, normalde kod yazmayı gerektiren bir Kusto hizmetine karşı görevleri otomatikleştirmek için öncelikli olarak sağlanır. Örneğin, bir C# programı veya PowerShell betiği.

Aracı edinin

Kusto.Cli, .NET için indirebileceğiniz NuGet paketinin Microsoft.Azure.Kusto.Tools bir parçasıdır. Paketi indirdikten sonra paketin tools klasörünü hedef klasöre ayıklayın. Xcopy ile yüklenebilir olduğundan ek yükleme gerekmez.

Aracı çalıştırın

Kusto.Cli'nin çalışması için en az bir komut satırı bağımsız değişkeni gerekir. Genellikle bu bağımsız değişken, aracın bağlanması gereken Kusto hizmetine bağlantı dizesi. Daha fazla bilgi için bkz. Kusto bağlantı dizesi s. Aracı komut satırı bağımsız değişkenleri olmadan, bilinmeyen bir bağımsız değişken kümesiyle veya anahtarla /help çalıştırırsanız, konsolda bir yardım iletisi görüntülenir.

Örneğin, Kusto.Cli'yı çalıştırmak için aşağıdaki komutu kullanın. komutu Kusto hizmetine bağlanır help ve veritabanı bağlamını Samples veritabanına ayarlar:

Kusto.Cli.exe "https://help.kusto.windows.net/Samples;Fed=true"

Not

PowerShell gibi kabuk uygulamalarının noktalı virgül (;) ve benzer karakterleri yanlış yorumlamasını önlemek için bağlantı dizesi çevresinde çift tırnak kullanın.

Komut satırı bağımsız değişkenleri

(Komut satırı bağımsız değişkenlerinin kapsamlı bir listesini almak için şunu çalıştırın: Kusto.Cli.exe -help.)

Kusto.Cli.exeConnectionString [Anahtarlar]

ConnectionString

-execute:QueryOrCommand

  • Belirtilirse, Kusto.Cli'yi yürütme modunda çalıştırır ve belirtilen sorgu veya komut çalıştırılır. Bu anahtar yinelenebilir ve sorgular/komutlar sırayla görünüm sırasına göre çalıştırılır. Bu anahtar veya -scriptmlile -script birlikte kullanılamaz.

-keepRunning:EnableKeepRunning

  • veya olarak true belirtilirse, tüm -script veya değerler işlendikten sonra REPL modunu etkinleştirir veya -execute devre dışı falsebırakır.

-script:ScriptFile

  • Belirtilirse Kusto.Cli dosyasını betik modunda çalıştırır. Belirtilen betik dosyası yüklenir ve içindeki sorgular veya komutlar sırayla çalıştırılır. Yeni satırlar, aşağıda açıklandığı gibi satırların bir & veya && birleşimiyle bitmesi dışında sorguları/komutları sınırlandırmak için kullanılır. Bu anahtar ile -executebirlikte kullanılamaz.

-scriptml:ScriptFile

  • Belirtilirse Kusto.Cli dosyasını betik modunda çalıştırır. Belirtilen betik dosyası yüklenir ve içindeki sorgular veya komutlar sırayla çalıştırılır. Betik dosyasının tamamı tek bir sorgu veya komut olarak kabul edilir (satır giriş modu yoksayılır veya giriş modunu engeller.) Bu anahtar ile -executebirlikte kullanılamaz.

-scriptQuitOnError:QuitOnFirstScriptError

  • Etkinleştirilirse, betikteki bir komut veya sorgu hatayla sonuçlanırsa Kusto.Cli çıkar. Devre dışı bırakılırsa, betik yürütme hatalara rağmen devam eder. Varsayılan olarak bu anahtar etkindir.

-echo:EnableEchoMode

  • veya falseolarak true belirtilirse, yankı modunu etkinleştirir veya devre dışı bırakır. Yankı modu etkinleştirildiğinde, çıkışta her sorgu veya komut yinelenir.

-transcript:TranscriptFile

  • Belirtilirse, program çıkışını TranscriptFile dosyasına yazar.

-logToConsole:EnableLogToConsole

  • veya falseolarak true belirtilirse, konsolda program çıktısının görüntülenmesini etkinleştirir veya devre dışı bırakır.

-lineMode:EnableLineMode

  • Konsoldan veya betiklerden sorgu veya komut girişi yaparken yeni çizgilerin nasıl ele alındığını belirler. Varsayılan olarak (veya açıkça trueolarak olarak ayarlanırsa), araç "satır giriş modu" kullanır. olarak ayarlanırsa false, betikler "blok girişi modunda" okunur. Bu iki modun açıklaması için aşağıya bakın.

Örnek

Kusto.Cli.exe "https://help.kusto.windows.net/Samples;Fed=true" -script:"c:\mycommands.txt"

Not

İki nokta üst üste ile bağımsız değişken değeri arasında boşluk olmamalıdır

Yönergeler

Kusto.Cli, işlenmek üzere hizmete göndermek yerine araçta bir dizi yönerge çalıştırır.

Yönerge Açıklama
?
#h
#help
Kısa bir yardım iletisi alın
q
#quit
#exit
Araçtan çıkma
#a
#abort
Araçta durdurularak çıkma
#clip Sonraki sorgunun veya komutun sonuçları panoya kopyalanır
#cls Konsol ekranını temizleme
#connect[ConnectionString] Farklı bir Kusto hizmetine bağlanır ( ConnectionString atlanırsa geçerli hizmet görüntülenir)
#crp [Ad [= Değer]] İstemci isteği özelliğinin değerini ayarlar veya yalnızca görüntüler ya da tüm değerleri görüntüler
#crp (-list | -doc) [Ön Ek] İstemci isteği özelliklerini ön eke veya tümüne göre listeler
#dbcontext [DatabaseName] Sorgular ve komutlar tarafından kullanılan "bağlam" veritabanını DatabaseName olarak değiştirir. Atlanırsa geçerli bağlam görüntülenir
keMetin Belirtilen metni çalışan bir Kusto.Explorer işlemine gönderir
#loopSaymak Metin Metni birkaç kez çalıştırır
#qp [Ad [= Değer]] Sorgu parametresinin değerini ayarlar veya yalnızca görüntüler ya da tüm değerleri görüntüler. Başlangıç/bitişte tek/çift tırnaklar kırpılır
#saveDosyaadı Sonraki sorgunun veya komutun sonuçları belirtilen CSV dosyasına kaydedilir
#scriptDosyaadı Belirtilen betiği yürütür
#scriptmlDosyaadı Belirtilen çok satırlı betiği yürütür

Satır giriş modu ve blok giriş modu

Kusto.Cli varsayılan olarak satır giriş modunda çalışır. Her yeni satır karakteri sorgular/komutlar arasında sınırlayıcı olarak yorumlanır ve satır hemen yürütülmeye gönderilir.

Bu modda, uzun bir sorguyu veya komutu birden çok satıra bölebilirsiniz. Bir & satırın son karakteri olan karakter, yeni satırdan önce Kusto.Cli'nin bir sonraki satırı okumaya devam etmesine neden olur. Satırın && son karakteri olan karakter, yeni satırdan önce Kusto.Cli'nin yeni satırı yoksayıp sonraki satırı okumaya devam etmesine neden olur.

Kusto.Cli, komut satırında belirterek -lineMode:false veya yönergesini #blockmodeyürüterek blok giriş modunda çalıştırmayı da destekler. Bu modda Kusto.Cli, Kusto.Explorer ve Kusto.WebExplorer'a benzer şekilde davranır. Bu satırlarda her blok tek bir sorgu veya komutla birlikte birlikte okunur ve bloklar aralarında bir veya daha fazla boş satırla sınırlandırılır.

Not

Sorgular/komutlar bir betik dosyasından (-script) okunurken blok giriş modunun kullanılması kesinlikle önerilir.

Açıklamalar

Kusto.Cli, yeni satıra başlayan bir // dizeyi açıklama satırı olarak yorumlar. Satırın geri kalanını yoksayar ve sonraki satırı okumaya devam eder.

Yalnızca araç seçenekleri

Komutlar Etki Şu anda
#timeon|#timeoff etkinleştir/devre dışı bırak seçeneği timing: İsteklerin geçen süreyi görüntüleme TRUE
#tableon|#tableoff etkinleştir/devre dışı bırak seçeneği tableView: Sonuç kümelerini tablo olarak biçimlendirme TRUE
#marson|#marsoff etkinleştir/devre dışı bırak seçeneği marsView: İkinciden sona sonuç kümelerini görüntüleme FALSE
#resultson|#resultsoff etkinleştir/devre dışı bırak seçeneği outputResultsSet: Sonuç kümelerini görüntüleme TRUE
#prettyon|#prettyoff etkinleştir/devre dışı bırak seçeneği prettyErrors: Hataları temizleme TRUE
#markdownon|#markdownoff enable/disable seçeneği markdownView: Tabloları MarkDown olarak biçimlendirme FALSE
#progressiveon|#progressiveoff etkinleştir/devre dışı bırak seçeneği progressiveView: Aşamalı sonuçları isteme ve görüntüleme FALSE
#linemode|#blockmode etkinleştir/devre dışı bırak seçeneği lineMode: Tek satırlı giriş modu TRUE
Komutlar Etki Varsayılan
#cridon|#cridoff (enable|disable seçeneği crid: İsteği göndermeden önce ClientRequestId değerini görüntüleyin) FALSE
#csvheaderson|#csvheadersoff (etkinleştir|devre dışı bırak seçeneği csvHeaders: CSV çıktısında üst bilgileri dahil et) TRUE
#focuson|#focusoff (etkinleştir|devre dışı bırak seçeneği focus: Tüm ek kabarıklığı kaldırın ve doğru şeylere odaklanın) FALSE
#linemode|#blockmode (etkinleştir|devre dışı bırak seçeneği lineMode: Tek satırlı giriş modu) TRUE
#markdownon|#markdownoff (etkinleştir|devre dışı bırak seçeneği markdownView: Tabloları MarkDown olarak biçimlendir) FALSE
#marson|#marsoff (etkinleştir|devre dışı bırak seçeneği marsView: İkinciden sona sonuç kümelerini görüntüleme) FALSE
#prettyon|#prettyoff (etkinleştir|devre dışı bırak seçeneği prettyErrors: Hataları temizle) TRUE
#querystreamingon|#querystreamingoff (etkinleştir|devre dışı bırak seçeneği queryStreaming: queryStreaming uç noktasını kullanın (yalnızca Kusto ekibi)) FALSE
#resultson|#resultsoff (etkinleştir|devre dışı bırak seçeneği outputResultsSet: Sonuç kümelerini görüntüleme) TRUE
#tableon|#tableoff (etkinleştir|devre dışı bırak seçeneği tableView: Sonuç kümelerini tablo olarak biçimlendir) TRUE
#timeon|#timeoff (etkinleştir|devre dışı bırak seçeneği timing: İsteklerin geçen süreyi görüntüler) TRUE
#typeon|#typeoff (etkinleştir|devre dışı bırak seçeneği typeView: Tablo görünümünde her sütunun türünü görüntüler. Streaming=true'yu zorlar) TRUE
#v2protocolon|#v2protocoloff (etkinleştir|devre dışı bırak seçeneği v2protocol: v1'i değil v2 sorgu protokollerini kullanın) TRUE

Sonuçları CSV olarak dışarı aktarmak için Kusto.Cli kullanma

Kusto.Cli'nin, #save sonraki sorgu sonuçlarını CSV biçiminde yerel bir dosyaya aktaran özel bir istemci tarafı komutu vardır. Örneğin, aşağıdaki satır tablodaki StormEvents help.kusto.windows.net 10 kaydı küme veritabanına Samples aktarır:

Kusto.Cli.exe @help/Samples -execute:"#save c:\temp\test.log" -execute:"StormEvents | take 10"

Kusto.Explorer'ın çalışan bir örneğini denetlemek için Kusto.Cli kullanma

Kusto.Cli'ya makinede çalışan Kusto.Explorer'ın "birincil" örneğiyle iletişim kurmasını ve sorgu göndermesini bildirebilirsiniz. Bu mekanizma, bir dizi sorgu çalıştırmak isteyen ancak Kusto.Explorer işlemini tekrar tekrar başlatmak istemeyen programlar için yararlı olabilir. Aşağıdaki örnekte Kusto.Cli, yardım kümesinde sorgu çalıştırmak için kullanılır:

#connect cluster('help').database('Samples')

#ke StormEvents | count

Söz dizimi basittir: #ke, ardından boşluk ve çalıştırılacak sorgu. Sorgu daha sonra kusto.cli dosyasında ayarlanmış geçerli küme/veritabanı ile varsa Kusto.Explorer'ın birincil örneğine gönderilir.