Aracılığıyla paylaş


Sorgu/yönetim HTTP isteği

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

İ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

Nelerin dahil yapılacağını öğrenmek için bkz. İstek üst bilgileri ve Gövde.

İstek üst bilgileri

Aşağıdaki tablo, sorgu ve yönetim işlemleri için kullanılan ortak üst bilgileri içerir.

Standart üst bilgi Açıklama Gerekli/isteğe bağlı
Accept İstemcinin aldığı medya türleri. application/json olarak ayarlayın. Zorunlu
Accept-Encoding Desteklenen içerik kodlamaları. Desteklenen kodlamalar ve gzipşeklindedirdeflate. İsteğe bağlı
Authorization Kimlik doğrulaması kimlik bilgileri. Daha fazla bilgi için bkz . kimlik doğrulaması. Zorunlu
Connection İşlemden sonra bağlantının açık kalıp kalmadığı. Öneri, olarak ayarlanmasıdır ConnectionKeep-Alive. İsteğe bağlı
Content-Length İstek gövdesinin boyutu. Biliniyorsa istek gövdesi uzunluğunu belirtin. İsteğe bağlı
Content-Type İstek gövdesinin medya türü. ile application/jsonolarak charset=utf-8 ayarlayın. Zorunlu
Expect Sunucudan beklenen yanıt. olarak ayarlanabilir 100-Continue. İsteğe bağlı
Host İsteğin gönderildiği nitelenmiş etki alanı adı. Örneğin, help.kusto.windows.net. Zorunlu

Aşağıdaki tablo, sorgu ve yönetim işlemleri için kullanılan ortak özel üst bilgileri içerir. Belirtilmediği sürece, 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. Ancak, özel üst bilgi belirtmenizi x-ms-client-request-id öneririz. çalışan sorguyu iptal etme gibi bazı senaryolarda, x-ms-client-request-id isteği tanımlamak için kullanıldığından gereklidir.

Özel üst bilgi Açıklama
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 ile aynı kolay ad x-ms-user.
x-ms-client-request-id İstek için benzersiz bir 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 zorlar ve bu da isteğin verileri değiştirmesini engeller.

İstek parametreleri

İstekte aşağıdaki parametreler geçirilebilir. Get veya POST'un 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/isteğe bağlı
csl Yürütülecek sorgu veya yönetim komutunun metni. Zorunlu
db Sorgu veya yönetim komutunun hedefi olan veritabanının adı. Bazı yönetim komutları için isteğe bağlı.
Tüm sorgular ve diğer tüm komutlar için gereklidir.
properties İsteğin işlenme biçimini ve sonuçlarını değiştiren istek özellikleri. Daha fazla bilgi için bkz . İstek özellikleri. İsteğe bağlı

GET sorgu parametreleri

GET isteği kullanıldığında sorgu parametreleri istek parametrelerini belirtir.

Gövde

POST isteği kullanıldığında, isteğin gövdesi istek parametrelerinin değerlerini içeren tek bir UTF-8 kodlanmış JSON belgesi içerir.

Örnekler

Aşağıdaki ö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 içeriği

{
  "db":"Samples",
  "csl":"print Test=\"Hello, World!\"",
  "properties":"{\"Options\":{\"queryconsistency\":\"strongconsistency\"},\"Parameters\":{},\"ClientRequestId\":\"MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1\"}"
}

Aşağıdaki örnekte curl kullanarak önceki sorguyu gönderen bir isteğin nasıl oluşturulacağı gösterilmektedir.

  1. Kimlik doğrulaması için bir belirteç alın.

    AAD_TENANT_NAME_OR_IDMicrosoft Entra uygulama kimlik doğrulamasınıAAD_APPLICATION_IDsonra , ve AAD_APPLICATION_KEY değerlerini ilgili değerlerle değiştirin.

    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"
    }
    
  2. 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
    
  3. Yanıtı yanıt durum kodlarına göre okuyun.

İstemci isteği özelliklerini ve sorgu parametrelerini ayarlama

Aşağıdaki istek gövdesi örneğindecsl, alanındaki sorgu ve nadlı d iki parametreyi bildirir. Bu sorgu parametrelerinin değerleri, istek gövdesindeki Parameters alanın altındaki properties alanın içinde belirtilir. alanı Options istemci 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 . Desteklenen istek özellikleri.

Show database önbelleğe alma ilkesi komutu gönder

Aşağıdaki örnek, veritabanı önbelleğe alma ilkesini göstermek Samples için bir istek gönderir.


{
    "db": "Samples",
    "csl": ".show database Samples policy caching",
    "properties": {
        "Options": {
            "maxmemoryconsumptionperiterator": 68719476736,
            "max_memory_consumption_per_query_per_node": 68719476736,
            "servertimeout": "50m"
        }
    }
}