Yönetim komutlara genel bakış

Sürüm açılan listesini kullanarak hizmetler arasında geçiş yapın. Gezinti hakkında daha fazla bilgi edinin.
Şunlar için geçerlidir: ✅ Microsoft Fabric ✅ Azure Veri Gezgini

Bu makalede Kusto'nun yönetimi için kullanılan ve denetim komutları olarak da bilinen yönetim komutları açıklanmaktadır. Yönetim komutları, veritabanı tablolarında mutlaka veri olmayan bilgileri almak veya hizmet durumunu değiştirmek vb. için hizmete yönelik isteklerdir.

Yönetim komutlarını sorgulardan ayırma

Kusto sorguları ve yönetim komutlarını ayırt etmek için üç mekanizma kullanır: dil düzeyinde, protokol düzeyinde ve API düzeyinde. Bu, güvenlik amacıyla yapılır.

Dil düzeyinde, istek metninin ilk karakteri isteğin bir yönetim komutu mu yoksa sorgu mu olduğunu belirler. Yönetim komutları nokta (.) karakteriyle başlamalıdır ve hiçbir sorgu bu karakterle başlatılamıyor.

Protokol düzeyinde, sorgular yerine denetim komutları için farklı HTTP/HTTPS uç noktaları kullanılır.

API düzeyinde, sorgular yerine yönetim komutları göndermek için farklı işlevler kullanılır.

Sorguları ve yönetim komutlarını birleştirme

Yönetim komutları sorgulara (ancak tam tersi) veya diğer yönetim komutlarını başvurabilir. Desteklenen birkaç senaryo vardır:

  • AdminThenQuery: Bir yönetim komutu yürütülür ve sonucu (geçici veri tablosu olarak temsil edilir) bir sorgunun girişi olarak görev görür.
  • AdminFromQuery: Sorgu veya .show yönetici komutu yürütülür ve sonucu (geçici veri tablosu olarak gösterilir) bir yönetim komutuna giriş görevi görür.

Her durumda, birleşimin tamamının sorgu değil teknik olarak bir yönetim komutu olduğunu, bu nedenle istek metninin nokta (.) karakterle başlaması ve isteğin hizmetin yönetim uç noktasına gönderilmesi gerektiğini unutmayın.

Ayrıca , sorgu deyimlerinin metnin sorgu bölümünde göründüğüne de dikkat edin (komutun kendisinden önce olamazlar).

Uyarı

AdminThenQuery işlemlerinin kullanımını sınırlamanızı öneririz.

AdminThenQuery iki yoldan biriyle belirtilir:

  • Bu nedenle sorgu, bir kanal (|) karakteri kullanarak yönetim komutunun sonuçlarını başka bir veri üreten sorgu işleciymiş gibi ele alır.
  • Daha sonra yönetim komutunun sonuçlarını adlı ;özel bir simgeye tanıtan noktalı virgül ($command_results) karakterini kullanarak sorguda birkaç kez kullanabilirsiniz.

Örneğin:

// 1. Using pipe: Count how many tables are in the database-in-scope:
.show tables
| count

// 2. Using semicolon: Count how many tables are in the database-in-scope:
.show tables;
$command_results
| count

// 3. Using semicolon, and including a let statement:
.show tables;
let useless=(n:string){strcat(n,'-','useless')};
$command_results | extend LastColumn=useless(TableName)

AdminFromQuery karakter bileşimiyle <| gösterilir. Örneğin, aşağıda ilk olarak tek sütunlu (türü stradlandırılmışstring) ve tek satırlı bir tablo oluşturan bir sorgu yürütür ve bunu bağlamda veritabanında tablo adı MyTable olarak yazarız:

.set MyTable <|
let text="Hello, World!";
print str=text