Interfejs wiersza polecenia usługi Kusto
Kusto.Cli to narzędzie wiersza polecenia do wysyłania zapytań i poleceń sterujących w klastrze Kusto. Można go uruchomić w jednym z kilku trybów:
Tryb REPL: użytkownik wprowadza zapytania i polecenia, a narzędzie wyświetla wyniki, a następnie oczekuje na następne zapytanie użytkownika/polecenie. ("REPL" oznacza "read/eval/print/loop".
Tryb wykonywania: użytkownik wprowadza co najmniej jedno zapytanie i polecenia do uruchomienia jako argumenty wiersza polecenia. Argumenty są automatycznie uruchamiane w sekwencji, a ich wyniki są zwracane do konsoli. Opcjonalnie po uruchomieniu wszystkich zapytań wejściowych i poleceń narzędzie przechodzi w tryb REPL.
Tryb skryptu: podobnie jak w trybie wykonywania, ale z zapytaniami i poleceniami określonymi w pliku ("skrypt") zamiast za pomocą argumentów wiersza polecenia.
Interfejs Kusto.Cli jest dostarczany głównie do automatyzowania zadań w usłudze Kusto, która zwykle wymaga pisania kodu. Na przykład program w języku C# lub skrypt programu PowerShell.
Pobieranie narzędzia
Kusto.Cli jest częścią pakietu Microsoft.Azure.Kusto.Tools
NuGet, który można pobrać dla platformy .NET. Po pobraniu pakietu wyodrębnij folder pakietu tools
do folderu docelowego. Nie jest wymagana żadna dodatkowa instalacja, ponieważ można ją zainstalować za pomocą narzędzia xcopy.
Uruchamianie narzędzia
Interfejs Kusto.Cli wymaga uruchomienia co najmniej jednego argumentu wiersza polecenia. Zazwyczaj argumentem jest parametry połączenia z usługą Kusto, z którą narzędzie powinno nawiązać połączenie.
Aby uzyskać więcej informacji, zobacz Kusto connection strings (Parametry połączenia usługi Kusto). Jeśli uruchomisz narzędzie bez argumentów wiersza polecenia, z nieznanym zestawem argumentów lub przełącznikiem /help
, w konsoli zostanie wyświetlony komunikat pomocy.
Na przykład użyj następującego polecenia, aby uruchomić interfejs wiersza polecenia Kusto.Cli. Polecenie połączy się z usługą help
Kusto i ustawi kontekst bazy danych na Samples
bazę danych:
Kusto.Cli.exe "https://help.kusto.windows.net/Samples;Fed=true"
Uwaga
Użyj podwójnych cudzysłowów wokół parametry połączenia, aby uniemożliwić aplikacjom powłoki, takim jak program PowerShell, błędne interpretowanie średnika (;
) i podobnych znaków.
Argumenty wiersza polecenia
(Aby uzyskać wyczerpującą listę argumentów wiersza polecenia, uruchom polecenie: Kusto.Cli.exe -help
.)
Kusto.Cli.exe
ConnectionString [przełączniki]
Connectionstring
- Usługa Kusto parametry połączenia zawierająca wszystkie informacje o połączeniu usługi Kusto.
Wartość domyślna to
net.tcp://localhost/NetDefaultDB
.
-execute:
QueryOrCommand
- W przypadku wybrania polecenia uruchom polecenie Kusto.Cli w trybie wykonywania, a określone zapytanie lub polecenie zostanie uruchomione. Ten przełącznik może się powtarzać, a zapytania/polecenia są uruchamiane sekwencyjnie w kolejności wyglądu.
Tego przełącznika nie można używać razem z programem
-script
lub-scriptml
.
-keepRunning:
EnableKeepRunning
- Jeśli określono wartość lub
true
false
, włącza lub wyłącza tryb REPL po przetworzeniu wszystkich-script
lub-execute
wartości.
-script:
ScriptFile
- Jeśli zostanie określony, program Kusto.Cli zostanie uruchomiony w trybie skryptu. Określony plik skryptu jest ładowany, a zapytania lub polecenia w nim są uruchamiane sekwencyjnie.
Nowe linie są używane do rozdzielania zapytań/poleceń, z wyjątkiem sytuacji, gdy wiersze kończą się kombinacją
&
lub&&
, jak wyjaśniono poniżej. Tego przełącznika nie można używać razem z-execute
.
-scriptml:
ScriptFile
- Jeśli zostanie określony, program Kusto.Cli zostanie uruchomiony w trybie skryptu. Określony plik skryptu jest ładowany, a zapytania lub polecenia w nim są uruchamiane sekwencyjnie.
Cały plik skryptu jest uważany za pojedyncze zapytanie lub polecenie (ignorując tryb wprowadzania wiersza lub zagadnienia dotyczące trybu wprowadzania blokowego). Tego przełącznika nie można używać razem z
-execute
.
-scriptQuitOnError:
QuitOnFirstScriptError
- W przypadku włączenia interfejsu Kusto.Cli zakończy działanie, jeśli polecenie lub zapytanie w skrycie spowoduje wystąpienie błędu. Jeśli to ustawienie jest wyłączone, wykonywanie skryptu będzie kontynuowane pomimo błędów. Domyślnie ten przełącznik jest włączony.
-echo:
EnableEchoMode
- Jeśli określono wartość lub
true
false
, włącza lub wyłącza tryb echa. Po włączeniu trybu echa każde zapytanie lub polecenie jest powtarzane w danych wyjściowych.
-transcript:
TranskrypcjaPlik
- Jeśli zostanie określony, program zapisuje dane wyjściowe programu do pliku TranscriptFile.
-logToConsole:
EnableLogToConsole
- Jeśli określono wartość lub
true
false
, włącza lub wyłącza wyświetlanie danych wyjściowych programu w konsoli programu.
-lineMode:
Tryb EnableLineMode
- Określa sposób traktowania nowych linii podczas wprowadzania zapytań lub poleceń z konsoli lub skryptów. Domyślnie (lub jeśli jawnie ustawiono
true
wartość ), narzędzie używa trybu wprowadzania wierszy. Jeśli ustawiono wartośćfalse
, skrypty są odczytywane w trybie "blokuj dane wejściowe". Poniżej przedstawiono wyjaśnienie tych dwóch trybów.
Przykład
Kusto.Cli.exe "https://help.kusto.windows.net/Samples;Fed=true" -script:"c:\mycommands.txt"
Uwaga
Nie powinno być spacji między dwukropkiem a wartością argumentu
Dyrektyw
Interfejs wiersza polecenia Kusto.Cli uruchamia szereg dyrektyw w narzędziu zamiast wysyłać je do usługi w celu przetworzenia.
Dyrektywy | Opis |
---|---|
? #h #help |
Uzyskiwanie krótkiego komunikatu pomocy |
q #quit #exit |
Zamknij narzędzie |
#a #abort |
Przerywanie zamykania narzędzia |
#clip |
Wyniki następnego zapytania lub polecenia zostaną skopiowane do schowka |
#cls |
Wyczyść ekran konsoli |
#connect [ConnectionString] |
Nawiązuje połączenie z inną usługą Kusto (jeśli parametr ConnectionString zostanie pominięty, zostanie wyświetlony bieżący) |
#crp [Name [= Value]] |
Ustawia wartość właściwości żądania klienta lub po prostu wyświetla ją lub wyświetla wszystkie wartości |
#crp (-list | -doc ) [Prefiks] |
Wyświetla listę właściwości żądania klienta, według prefiksu lub wszystkich |
#dbcontext [DatabaseName] |
Zmienia bazę danych "kontekstu" używaną przez zapytania i polecenia na DatabaseName. Jeśli pominięto, bieżący kontekst jest wyświetlany |
ke Tekst |
Wysyła określony tekst do uruchomionego procesu Kusto.Explorer |
#loop Zlicztekst |
Uruchamia tekst wielokrotnie |
#qp [Name [= Value]] |
Ustawia wartość parametru zapytania lub po prostu wyświetla ją lub wyświetla wszystkie wartości. Apostrofy na początku/na końcu zostaną przycięte |
#save Pod nazwą |
Wyniki następnego zapytania lub polecenia zostaną zapisane w wskazanym pliku CSV |
#script Pod nazwą |
Wykonuje wskazany skrypt |
#scriptml Pod nazwą |
Wykonuje wskazany skrypt wielowierszowy |
Tryb wprowadzania linii i tryb wprowadzania blokowego
Domyślnie interfejs Kusto.Cli działa w trybie wprowadzania wierszy. Każdy znak nowego wiersza jest interpretowany jako ogranicznik między zapytaniami/poleceniami, a wiersz jest natychmiast wysyłany do wykonania.
W tym trybie można podzielić długie zapytanie lub polecenie na wiele wierszy. Znak &
jako ostatni znak wiersza, przed nowym wierszem, powoduje, że interfejs Kusto.Cli będzie kontynuować odczytywanie następnego wiersza. Znak &&
jako ostatni znak wiersza, przed nowym wierszem, powoduje, że interfejs Kusto.Cli ignoruje nowy wiersz i kontynuuj czytanie następnego wiersza.
Interfejs Kusto.Cli obsługuje również uruchamianie w trybie wprowadzania bloków , określając -lineMode:false
w wierszu polecenia lub wykonując dyrektywę #blockmode
. W tym trybie interfejs Kusto.Cli działa podobnie do kusto.Explorer i Kusto.WebExplorer, w tych wierszach są odczytywane razem jako "bloki", z każdym blokiem składającym się z jednego zapytania lub polecenia, a bloki są rozdzielane przez co najmniej jeden pusty wiersz między nimi.
Uwaga
Użycie trybu wprowadzania bloków jest zdecydowanie zalecane, gdy zapytania/polecenia są odczytywane z pliku skryptu (-script
).
Komentarze
Kusto.Cli interpretuje //
ciąg, który rozpoczyna nowy wiersz jako wiersz komentarza. Ignoruje resztę wiersza i kontynuuje odczytywanie następnego wiersza.
Opcje tylko dla narzędzi
Polecenia | Efekt | Obecnie |
---|---|---|
#timeon|#timeoff | opcja timing włączania/wyłączania: wyświetlanie żądań dotyczących czasu, które zajęły |
TRUE |
#tableon|#tableoff | opcja tableView włączania/wyłączania: formatowanie zestawów wyników jako tabel |
TRUE |
#marson|#marsoff | opcja marsView włączania/wyłączania: wyświetla zestawy wyników od sekundy do ostatniego |
FALSE |
#resultson|#resultsoff | opcja outputResultsSet włączania/wyłączania: wyświetlanie zestawów wyników |
TRUE |
#prettyon|#prettyoff | opcja prettyErrors włączania/wyłączania: Czyszczenie błędów |
TRUE |
#markdownon|#markdownoff | opcja markdownView włączania/wyłączania: formatuj tabele jako MarkDown |
FALSE |
#progressiveon|#progressiveoff | opcja progressiveView włączania/wyłączania: pytaj i wyświetlaj wyniki progresywne |
FALSE |
#linemode|#blockmode | opcja lineMode włączania/wyłączania: tryb wprowadzania jednowierszowego |
TRUE |
Polecenia | Efekt | Default |
---|---|---|
#cridon|#cridoff | (włącz|wyłącz opcję crid : wyświetl identyfikator ClientRequestId przed wysłaniem żądania) |
FALSE |
#csvheaderson|#csvheadersoff | (włącz|wyłącz opcję csvHeaders : uwzględnij nagłówki w danych wyjściowych CSV) |
TRUE |
#focuson|#focusoff | (włącz|wyłącz opcję focus : Usuń wszystkie dodatkowe puchy i skupić się na odpowiednich rzeczach) |
FALSE |
#linemode|#blockmode | (włącz|wyłącz opcję lineMode : tryb wprowadzania jednowierszowego) |
TRUE |
#markdownon|#markdownoff | (włącz|wyłącz opcję markdownView : Formatuj tabele jako MarkDown) |
FALSE |
#marson|#marsoff | (włącz|wyłącz opcję marsView : Wyświetl zestawy wyników od sekundy do ostatniego) |
FALSE |
#prettyon|#prettyoff | (włącz|wyłącz opcję prettyErrors : Czyszczenie błędów) |
TRUE |
#querystreamingon|#querystreamingoff | (włącz|wyłącz opcję queryStreaming : Użyj punktu końcowego queryStreaming (tylko zespół Kusto)) |
FALSE |
#resultson|#resultsoff | (włącz|wyłącz opcję outputResultsSet : Wyświetl zestawy wyników) |
TRUE |
#tableon|#tableoff | (włącz|wyłącz opcję tableView : Formatuj zestawy wyników jako tabele) |
TRUE |
#timeon|#timeoff | (włącz|wyłącz opcję timing : wyświetl czas, przez który odebrały żądania) |
TRUE |
#typeon|#typeoff | (włącz|wyłącz opcję typeView : wyświetl typ każdej kolumny w widoku tabeli. Wymusza przesyłanie strumieniowe =true) |
TRUE |
#v2protocolon|#v2protocoloff | (włącz|wyłącz opcję v2protocol : użyj protokołu zapytania w wersji 2, a nie w wersji 1) |
TRUE |
Eksportowanie wyników jako pliku CSV przy użyciu interfejsu Kusto.Cli
Kusto.Cli ma specjalne polecenie po stronie klienta, #save
które eksportuje kolejne wyniki zapytania do pliku lokalnego w formacie CSV. Na przykład następujący wiersz spowoduje wyeksportowanie 10 rekordów z StormEvents
tabeli do klastra help.kusto.windows.net
, Samples
bazy danych:
Kusto.Cli.exe @help/Samples -execute:"#save c:\temp\test.log" -execute:"StormEvents | take 10"
Używanie interfejsu Kusto.Cli do kontrolowania uruchomionego wystąpienia narzędzia Kusto.Explorer
Możesz poinstruować interfejs Kusto.Cli, aby komunikował się z "podstawowym" wystąpieniem narzędzia Kusto.Explorer uruchomionym na maszynie i wysyłać zapytania. Ten mechanizm może być przydatny w przypadku programów, które chcą uruchamiać wiele zapytań, ale nie chcą wielokrotnie uruchamiać procesu Kusto.Explorer. W poniższym przykładzie narzędzie Kusto.Cli służy do uruchamiania zapytania względem klastra pomocy:
#connect cluster('help').database('Samples')
#ke StormEvents | count
Składnia jest prosta: #ke
, a następnie białe znaki i zapytanie do uruchomienia.
Zapytanie jest następnie wysyłane do podstawowego wystąpienia narzędzia Kusto.Explorer, jeśli istnieje, z bieżącym klastrem/bazą danych ustawioną w interfejsie Kusto.Cli.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla