Sorgu/yönetim HTTP isteği
İstek fiili ve kaynağı
Eylem | HTTP fiili | HTTP kaynağı |
---|---|---|
Sorgu | GET | /v1/rest/query |
Sorgu | POST | /v1/rest/query |
Sorgu v2 | GET | /v2/rest/query |
Sorgu v2 | POST | /v2/rest/query |
Yönetim | POST | /v1/rest/mgmt |
Örneğin, bir hizmet uç noktasına bir yönetim komutu ("yönetim") göndermek için aşağıdaki istek satırını kullanın:
POST https://help.kusto.windows.net/v1/rest/mgmt HTTP/1.1
İstek üst bilgilerinin ve gövdenin dahil olması için aşağıya bakın.
İstek üst bilgileri
Aşağıdaki tabloda sorgu ve yönetim işlemleri için kullanılan ortak üst bilgiler yer alır.
Standart üst bilgi | Description | Gerekli/İsteğe Bağlı |
---|---|---|
Accept |
Şu şekilde ayarlayın: application/json |
Gerekli |
Accept-Encoding |
Desteklenen kodlamalar şunlardır gzip : ve deflate |
İsteğe Bağlı |
Authorization |
Bkz. kimlik doğrulaması | Gerekli |
Connection |
Etkinleştirmenizi öneririz Keep-Alive |
İsteğe Bağlı |
Content-Length |
Biliniyorsa istek gövdesi uzunluğunu belirtmenizi öneririz | İsteğe Bağlı |
Content-Type |
ile olarak application/json ayarlayın charset=utf-8 |
Gerekli |
Expect |
Şu şekilde ayarlanabilir: 100-Continue |
İsteğe Bağlı |
Host |
İsteğin gönderildiği tam etki alanı adına ayarlayın (örneğin, help.kusto.windows.net ) |
Gerekli |
Aşağıdaki tabloda sorgu ve yönetim işlemleri için kullanılan ortak özel üst bilgiler yer alır. Aksi belirtilmedikçe, bu üst bilgiler yalnızca telemetri amacıyla kullanılır ve işlevselliği etkilemez.
Tüm üst bilgiler isteğe bağlıdır. Özel üst bilgiyi belirtmenizi x-ms-client-request-id
öneririz.
Çalışan sorguyu iptal etme gibi bazı senaryolarda, isteği tanımlamak için kullanıldığından bu üst bilgi gereklidir.
Özel üst bilgi | Description |
---|---|
x-ms-app |
İstekte bulunan uygulamanın (kolay) adı |
x-ms-user |
İsteği yapan kullanıcının (kolay) adı |
x-ms-user-id |
Aynı x-ms-user |
x-ms-client-request-id |
İstek için benzersiz tanımlayıcı |
x-ms-client-version |
İsteği yapan istemcinin (kolay) sürüm tanımlayıcısı |
x-ms-readonly |
Belirtilirse, isteği salt okunur modda çalışmaya zorlayarak uzun süreli değişiklikler yapmasını engeller |
İstek parametreleri
İstekte aşağıdaki parametreler geçirilebilir. Get veya POST kullanılıp kullanılmadığına bağlı olarak istekte sorgu parametreleri olarak veya gövdenin bir parçası olarak kodlanırlar.
Parametre | Açıklama | Gerekli/İsteğe Bağlı |
---|---|---|
csl |
Yürütülecek sorgu veya yönetim komutunun metni | Gerekli |
db |
Sorgu veya yönetim komutunun hedefi olan kapsamdaki veritabanının adı | Bazı yönetim komutları için isteğe bağlıdır. Diğer komutlar ve tüm sorgular için gereklidir. |
properties |
İsteğin işlenme şeklini ve sonuçlarını değiştiren istek özellikleri sağlar. Daha fazla bilgi için bkz . İstek özellikleri | İsteğe Bağlı |
GET sorgu parametreleri
GET kullanıldığında, isteğin sorgu parametreleri istek parametrelerini belirtir.
Gövde
POST kullanıldığında, isteğin gövdesi UTF-8 ile kodlanmış ve istek parametrelerinin değerleriyle birlikte tek bir JSON belgesidir.
Örnekler
Bu örnekte sorgu için HTTP POST isteği gösterilmektedir.
POST https://help.kusto.windows.net/v2/rest/query HTTP/1.1
İstek üst bilgileri
Accept: application/json
Authorization: Bearer ...AzureActiveDirectoryAccessToken...
Accept-Encoding: deflate
Content-Type: application/json; charset=utf-8
Host: help.kusto.windows.net
x-ms-client-request-id: MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1
x-ms-user-id: EARTH\davidbg
x-ms-app: MyApp
İstek gövdesi
{
"db":"Samples",
"csl":"print Test=\"Hello, World!\"",
"properties":"{\"Options\":{\"queryconsistency\":\"strongconsistency\"},\"Parameters\":{},\"ClientRequestId\":\"MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1\"}"
}
Bu örnekte curl kullanarak yukarıdaki sorguyu gönderen bir isteğin nasıl oluşturulacağı gösterilmektedir.
Kimlik doğrulaması için bir belirteç alın.
AAD_APPLICATION_ID
Uygulama kimlik doğrulaması Microsoft Entra ayarladıktan sonra , veAAD_APPLICATION_KEY
değerlerini ilgili değerlerle değiştirinAAD_TENANT_NAME_OR_ID
curl "https://login.microsoftonline.com/AAD_TENANT_NAME_OR_ID/oauth2/token" \ -F "grant_type=client_credentials" \ -F "resource=https://help.kusto.windows.net" \ -F "client_id=AAD_APPLICATION_ID" \ -F "client_secret=AAD_APPLICATION_KEY"
Bu kod parçacığı size taşıyıcı belirteci sağlar.
{ "token_type": "Bearer", "expires_in": "3599", "ext_expires_in":"3599", "expires_on":"1578439805", "not_before":"1578435905", "resource":"https://help.kusto.windows.net", "access_token":"eyJ0...uXOQ" }
Sorgu uç noktasına isteğinizde taşıyıcı belirtecini kullanın.
curl -d '{"db":"Samples","csl":"print Test=\"Hello, World!\"","properties":"{\"Options\":{\"queryconsistency\":\"strongconsistency\"}}"}"' \ -H "Accept: application/json" \ -H "Authorization: Bearer eyJ0...uXOQ" \ -H "Content-Type: application/json; charset=utf-8" \ -H "Host: help.kusto.windows.net" \ -H "x-ms-client-request-id: MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1" \ -H "x-ms-user-id: EARTH\davidbg" \ -H "x-ms-app: MyApp" \ -X POST https://help.kusto.windows.net/v2/rest/query
Yanıtı bu belirtim doğrultusunda okuyun.
İstemci isteği özelliklerini ve sorgu parametrelerini ayarlama
Aşağıdaki örnek gövdesindecsl
, alanındaki sorgu ve d
adlı n
iki parametreyi bildirir. Bu sorgu parametrelerinin değerleri, istek gövdesindeki Parameters
alanın altındaki properties
alanın içinde belirtilir. alanı istemci Options
isteği özelliklerini tanımlar.
Not
Dize olmayan ve uzun olmayan parametreler, dize biçiminde KQL değişmez değerleri olarak ifade edilmelidir.
{
"db": "Samples",
"csl": "declare query_parameters (n:long, d:dynamic); StormEvents | where State in (d) | top n by StartTime asc",
"properties": {
"Options": {
"maxmemoryconsumptionperiterator": 68719476736,
"max_memory_consumption_per_query_per_node": 68719476736,
"servertimeout": "50m"
},
"Parameters": {
"n": 10, "d": "dynamic([\"ATLANTIC SOUTH\"])"
}
}
}
Daha fazla bilgi için bkz . Sorgu parametreleri.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin