Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
bir işlev çalıştırıldığında, Azure Veri Gezgini çıkış bağlaması verileri Azure Veri Gezgini'a alır.
Kurulum ve yapılandırma ayrıntıları hakkında bilgi için genel bakışa bakın.
Örnekler
Aşağıdaki C# modlarından birini kullanarak bir C# işlevi oluşturabilirsiniz:
- Yalıtılmış çalışan modeli: Çalışma zamanından yalıtılmış bir çalışan işleminde çalışan derlenmiş C# işlevi. .NET ve .NET Framework için uzun vadeli destek (LTS) ve LTS olmayan sürümlerde çalışan C# işlevlerini desteklemek için yalıtılmış bir çalışan işlemi gereklidir.
- İşlem içi model: Azure İşlevleri çalışma zamanıyla aynı işlemde çalışan derlenmiş C# işlevi.
- C# betiği: Öncelikle Azure portalında C# işlevleri oluşturduğunuzda kullanılır.
Önemli
İşlem içi model desteği 10 Kasım 2026'da sona erecektir. Tam destek için uygulamalarınızı yalıtılmış çalışan modeline geçirmenizi kesinlikle öneririz.
GitHub deposunda Azure Veri Gezgini çıkış bağlaması için daha fazla örnek mevcuttur.
Bu bölüm aşağıdaki örnekleri içerir:
Örnekler sınıfa Product ve buna karşılık gelen bir veritabanı tablosuna başvurur:
public class Product
{
[JsonProperty(nameof(ProductID))]
public long ProductID { get; set; }
[JsonProperty(nameof(Name))]
public string Name { get; set; }
[JsonProperty(nameof(Cost))]
public double Cost { get; set; }
}
.create-merge table Products (ProductID:long, Name:string, Cost:double)
HTTP tetikleyicisi, bir kayıt yazma
Aşağıdaki örnekte veritabanına kayıt ekleyen bir C# işlevi gösterilmektedir. İşlev, JSON gövdesi olarak HTTP POST isteğinde sağlanan verileri kullanır.
using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.Functions.Worker.Extensions.Kusto;
using Microsoft.Azure.Functions.Worker.Http;
using Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples.Common;
namespace Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples
{
public static class AddProduct
{
[Function("AddProduct")]
[KustoOutput(Database: "productsdb", Connection = "KustoConnectionString", TableName = "Products")]
public static async Task<Product> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "addproductuni")]
HttpRequestData req)
{
Product? prod = await req.ReadFromJsonAsync<Product>();
return prod ?? new Product { };
}
}
}
HTTP tetikleyicisi, eşleme ile kayıt yazma
Aşağıdaki örnekte, veritabanına bir kayıt koleksiyonu ekleyen bir C# işlevi gösterilmektedir. işlevi, bir Product öğesini öğesine dönüştüren eşlemeyi Itemkullanır.
İşlev, 'den'e Product veri dönüştürmek için Itembir eşleme başvurusu kullanır:
.create-merge table Item (ItemID:long, ItemName:string, ItemCost:float)
-- Create a mapping that transforms an Item to a Product
.create-or-alter table Product ingestion json mapping "item_to_product_json" '[{"column":"ProductID","path":"$.ItemID"},{"column":"Name","path":"$.ItemName"},{"column":"Cost","path":"$.ItemCost"}]'
namespace Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples.Common
{
public class Item
{
public long ItemID { get; set; }
public string? ItemName { get; set; }
public double ItemCost { get; set; }
}
}
using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.Functions.Worker.Extensions.Kusto;
using Microsoft.Azure.Functions.Worker.Http;
using Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples.Common;
namespace Microsoft.Azure.WebJobs.Extensions.Kusto.SamplesOutOfProc.OutputBindingSamples
{
public static class AddProductsWithMapping
{
[Function("AddProductsWithMapping")]
[KustoOutput(Database: "productsdb", Connection = "KustoConnectionString", TableName = "Products", MappingRef = "item_to_product_json")]
public static async Task<Item> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "addproductswithmapping")]
HttpRequestData req)
{
Item? item = await req.ReadFromJsonAsync<Item>();
return item ?? new Item { };
}
}
}
GitHub deposunda Java Azure Veri Gezgini giriş bağlaması için daha fazla örnek mevcuttur.
Bu bölüm aşağıdaki örnekleri içerir:
Örnekler bir sınıfa (ayrı bir Products dosyada Product.java) ve buna karşılık gelen bir veritabanı tablosuna Products (daha önce tanımlanmıştır) başvurur:
package com.microsoft.azure.kusto.common;
import com.fasterxml.jackson.annotation.JsonProperty;
public class Product {
@JsonProperty("ProductID")
public long ProductID;
@JsonProperty("Name")
public String Name;
@JsonProperty("Cost")
public double Cost;
public Product() {
}
public Product(long ProductID, String name, double Cost) {
this.ProductID = ProductID;
this.Name = name;
this.Cost = Cost;
}
}
HTTP tetikleyicisi, tabloya kayıt yazma
Aşağıdaki örnekte, tabloya ürün kaydı ekleyen bir Java işlevindeki Azure Veri Gezgini çıkış bağlaması gösterilmektedir. İşlev, JSON gövdesi olarak HTTP POST isteğinde sağlanan verileri kullanır. İşlev, JSON gövdesini ayrıştırmak için com.fasterxml.jackson.core kitaplığına başka bir bağımlılık alır.
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.4.1</version>
</dependency>
package com.microsoft.azure.kusto.outputbindings;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.microsoft.azure.functions.HttpMethod;
import com.microsoft.azure.functions.HttpRequestMessage;
import com.microsoft.azure.functions.HttpResponseMessage;
import com.microsoft.azure.functions.HttpStatus;
import com.microsoft.azure.functions.OutputBinding;
import com.microsoft.azure.functions.annotation.AuthorizationLevel;
import com.microsoft.azure.functions.annotation.FunctionName;
import com.microsoft.azure.functions.annotation.HttpTrigger;
import com.microsoft.azure.functions.kusto.annotation.KustoOutput;
import com.microsoft.azure.kusto.common.Product;
import java.io.IOException;
import java.util.Optional;
import static com.microsoft.azure.kusto.common.Constants.*;
public class AddProduct {
@FunctionName("AddProduct")
public HttpResponseMessage run(@HttpTrigger(name = "req", methods = {
HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS, route = "addproductuni") HttpRequestMessage<Optional<String>> request,
@KustoOutput(name = "product", database = "productsdb", tableName = "Products", connection = KUSTOCONNSTR) OutputBinding<Product> product)
throws IOException {
if (request.getBody().isPresent()) {
String json = request.getBody().get();
ObjectMapper mapper = new ObjectMapper();
Product p = mapper.readValue(json, Product.class);
product.setValue(p);
return request.createResponseBuilder(HttpStatus.OK).header("Content-Type", "application/json").body(product)
.build();
} else {
return request.createResponseBuilder(HttpStatus.NO_CONTENT).header("Content-Type", "application/json")
.build();
}
}
}
HTTP tetikleyicisi, iki tabloya yazma
Aşağıdaki örnekte, iki farklı tablodaki (Product ve ProductChangeLog) bir veritabanına kayıt ekleyen bir Java işlevindeki Azure Veri Gezgini çıkış bağlaması gösterilmektedir. İşlev, JSON gövdesi ve birden çok çıkış bağlaması olarak BIR HTTP POST isteğinde sağlanan verileri kullanır. İşlev, JSON gövdesini ayrıştırmak için com.fasterxml.jackson.core kitaplığına başka bir bağımlılık alır.
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.4.1</version>
</dependency>
İkinci tablo olan ProductsChangeLog, aşağıdaki tanıma karşılık gelir:
.create-merge table ProductsChangeLog (ProductID:long, CreatedAt:datetime)
ve içindeki ProductsChangeLog.javaJava sınıfı:
package com.microsoft.azure.kusto.common;
import com.fasterxml.jackson.annotation.JsonProperty;
public class ProductsChangeLog {
@JsonProperty("ProductID")
public long ProductID;
@JsonProperty("CreatedAt")
public String CreatedAt;
public ProductsChangeLog() {
}
public ProductsChangeLog(long ProductID, String CreatedAt) {
this.ProductID = ProductID;
this.CreatedAt = CreatedAt;
}
}
package com.microsoft.azure.kusto.outputbindings;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.microsoft.azure.functions.HttpMethod;
import com.microsoft.azure.functions.HttpRequestMessage;
import com.microsoft.azure.functions.HttpResponseMessage;
import com.microsoft.azure.functions.HttpStatus;
import com.microsoft.azure.functions.OutputBinding;
import com.microsoft.azure.functions.annotation.AuthorizationLevel;
import com.microsoft.azure.functions.annotation.FunctionName;
import com.microsoft.azure.functions.annotation.HttpTrigger;
import com.microsoft.azure.functions.kusto.annotation.KustoOutput;
import com.microsoft.azure.kusto.common.Product;
import com.microsoft.azure.kusto.common.ProductsChangeLog;
import static com.microsoft.azure.kusto.common.Constants.*;
import java.io.IOException;
import java.time.Clock;
import java.time.Instant;
import java.util.Optional;
public class AddMultiTable {
@FunctionName("AddMultiTable")
public HttpResponseMessage run(@HttpTrigger(name = "req", methods = {
HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS, route = "addmultitable") HttpRequestMessage<Optional<String>> request,
@KustoOutput(name = "product", database = "productsdb", tableName = "Products", connection = KUSTOCONNSTR) OutputBinding<Product> product,
@KustoOutput(name = "productChangeLog", database = "productsdb", tableName = "ProductsChangeLog",
connection = KUSTOCONNSTR) OutputBinding<ProductsChangeLog> productChangeLog)
throws IOException {
if (request.getBody().isPresent()) {
String json = request.getBody().get();
ObjectMapper mapper = new ObjectMapper();
Product p = mapper.readValue(json, Product.class);
product.setValue(p);
productChangeLog.setValue(new ProductsChangeLog(p.ProductID, Instant.now(Clock.systemUTC()).toString()));
return request.createResponseBuilder(HttpStatus.OK).header("Content-Type", "application/json").body(product)
.build();
} else {
return request.createResponseBuilder(HttpStatus.NO_CONTENT).header("Content-Type", "application/json")
.build();
}
}
}
GitHub deposunda Azure Veri Gezgini çıkış bağlaması için daha fazla örnek mevcuttur.
Bu bölüm aşağıdaki örnekleri içerir:
Örnekler bir veritabanı tablosuna başvurur.
Örnekler tablolara Products ve ProductsChangeLog (daha önce tanımlanmıştır) başvurur.
HTTP tetikleyicisi, tabloya kayıt yazma
Aşağıdaki örnekte, bir function.json dosyasındaki Azure Veri Gezgini çıkış bağlaması ve tabloya kayıt ekleyen bir JavaScript işlevi gösterilmektedir. İşlev, JSON gövdesi olarak HTTP POST isteğinde sağlanan verileri kullanır.
Aşağıdaki örnek, function.json dosyasındaki verileri bağlamadır:
{
"bindings": [
{
"authLevel": "function",
"name": "req",
"direction": "in",
"type": "httpTrigger",
"methods": [
"post"
],
"route": "addproduct"
},
{
"name": "$return",
"type": "http",
"direction": "out"
},
{
"name": "product",
"type": "kusto",
"database": "productsdb",
"direction": "out",
"tableName": "Products",
"connection": "KustoConnectionString"
}
],
"disabled": false
}
Yapılandırma bölümünde bu özellikler açıklanır.
Aşağıdaki kod parçacığı örnek JavaScript kodudur:
// Insert the product, which will insert it into the Products table.
module.exports = async function (context, req) {
// Note that this expects the body to be a JSON object or array of objects which have a property
// matching each of the columns in the table to insert to.
context.bindings.product = req.body;
return {
status: 201,
body: req.body
};
}
HTTP tetikleyicisi, iki tabloya yazma
Aşağıdaki örnekte, bir function.json dosyasındaki Azure Veri Gezgini çıkış bağlaması ve iki farklı tablodaki (Products ve ProductsChangeLog) bir veritabanına kayıt ekleyen bir JavaScript işlevi gösterilmektedir. İşlev, JSON gövdesi ve birden çok çıkış bağlaması olarak BIR HTTP POST isteğinde sağlanan verileri kullanır.
İkinci tablo olan ProductsChangeLog, aşağıdaki tanıma karşılık gelir:
.create-merge table ProductsChangeLog (ProductID:long, CreatedAt:datetime)
Aşağıdaki kod parçacığı, function.json dosyasındaki verileri bağlamaktır:
{
"bindings": [
{
"authLevel": "function",
"name": "req",
"direction": "in",
"type": "httpTrigger",
"methods": [
"post"
],
"route": "addmultitable"
},
{
"name": "res",
"type": "http",
"direction": "out"
},
{
"name": "product",
"type": "kusto",
"database": "productsdb",
"direction": "out",
"tableName": "Products",
"connection": "KustoConnectionString"
},
{
"name": "productchangelog",
"type": "kusto",
"database": "productsdb",
"direction": "out",
"tableName": "ProductsChangeLog",
"connection": "KustoConnectionString"
}
],
"disabled": false
}
Yapılandırma bölümünde bu özellikler açıklanır.
Aşağıdaki kod parçacığı örnek JavaScript kodudur:
module.exports = async function (context, req) {
context.log('JavaScript HTTP trigger and Kusto output binding function processed a request.');
context.log(req.body);
if (req.body) {
var changeLog = {ProductID:req.body.ProductID, CreatedAt: new Date().toISOString()};
context.bindings.product = req.body;
context.bindings.productchangelog = changeLog;
context.res = {
body: req.body,
mimetype: "application/json",
status: 201
}
} else {
context.res = {
status: 400,
body: "Error reading request body"
}
}
}
GitHub deposunda Azure Veri Gezgini çıkış bağlaması için daha fazla örnek mevcuttur.
Bu bölüm aşağıdaki örnekleri içerir:
Örnekler tablolara Products ve ProductsChangeLog (daha önce tanımlanmıştır) başvurur.
HTTP tetikleyicisi, tabloya kayıt yazma
Aşağıdaki örnekte, bir function.json dosyasındaki Azure Veri Gezgini çıkış bağlaması ve tabloya kayıt ekleyen bir Python işlevi gösterilmektedir. İşlev, JSON gövdesi olarak HTTP POST isteğinde sağlanan verileri kullanır.
Aşağıdaki kod parçacığı, function.json dosyasındaki verileri bağlamaktır:
{
"scriptFile": "__init__.py",
"bindings": [
{
"authLevel": "Anonymous",
"type": "httpTrigger",
"direction": "in",
"name": "req",
"methods": [
"post"
],
"route": "addproductuni"
},
{
"type": "http",
"direction": "out",
"name": "$return"
},
{
"name": "product",
"type": "kusto",
"database": "sdktestsdb",
"direction": "out",
"tableName": "Products",
"connection": "KustoConnectionString"
}
]
}
Yapılandırma bölümünde bu özellikler açıklanır.
Aşağıdaki kod parçacığı örnek Python kodudur:
import azure.functions as func
from Common.product import Product
def main(req: func.HttpRequest, product: func.Out[str]) -> func.HttpResponse:
body = str(req.get_body(),'UTF-8')
product.set(body)
return func.HttpResponse(
body=body,
status_code=201,
mimetype="application/json"
)
HTTP tetikleyicisi, iki tabloya yazma
Aşağıdaki örnekte, bir function.json dosyasındaki Azure Veri Gezgini çıkış bağlaması ve iki farklı tablodaki (Products ve ProductsChangeLog) bir veritabanına kayıt ekleyen bir JavaScript işlevi gösterilmektedir. İşlev, JSON gövdesi ve birden çok çıkış bağlaması olarak BIR HTTP POST isteğinde sağlanan verileri kullanır. İkinci tablo olan ProductsChangeLog, aşağıdaki tanıma karşılık gelir:
.create-merge table ProductsChangeLog (ProductID:long, CreatedAt:datetime)
Aşağıdaki kod parçacığı, function.json dosyasındaki verileri bağlamaktır:
{
"scriptFile": "__init__.py",
"bindings": [
{
"authLevel": "Anonymous",
"type": "httpTrigger",
"direction": "in",
"name": "req",
"methods": [
"post"
],
"route": "addmultitable"
},
{
"type": "http",
"direction": "out",
"name": "$return"
},
{
"name": "product",
"type": "kusto",
"database": "sdktestsdb",
"direction": "out",
"tableName": "Products",
"connection": "KustoConnectionString"
},
{
"name": "productchangelog",
"type": "kusto",
"database": "sdktestsdb",
"direction": "out",
"tableName": "ProductsChangeLog",
"connection": "KustoConnectionString"
}
]
}
Yapılandırma bölümünde bu özellikler açıklanır.
Aşağıdaki kod parçacığı örnek Python kodudur:
import json
from datetime import datetime
import azure.functions as func
from Common.product import Product
def main(req: func.HttpRequest, product: func.Out[str],productchangelog: func.Out[str]) -> func.HttpResponse:
body = str(req.get_body(),'UTF-8')
# parse x:
product.set(body)
id = json.loads(body)["ProductID"]
changelog = {
"ProductID": id,
"CreatedAt": datetime.now().isoformat(),
}
productchangelog.set(json.dumps(changelog))
return func.HttpResponse(
body=body,
status_code=201,
mimetype="application/json"
)
Özellikler
C# kitaplığı, aşağıdaki özelliklere sahip olan işlevde Azure Veri Gezgini bağlamalarını bildirmek için KustoAttribute özniteliğini kullanır.
| Öznitelik özelliği | Açıklama |
|---|---|
| Veritabanı | Gerekli. Sorgunun yürütülmesi gereken veritabanı. |
| Bağlantı | Gerekli. ortam değişkenleri veya işlev uygulaması ayarları aracılığıyla çözümlenen bağlantı dizesi tutan değişkenin adı. değişkenini KustoConnectionStringaramak için varsayılan değerdir. Çalışma zamanında, bu değişken ortama göre aranılır. bağlantı dizesi belgeleri Kusto bağlantı dizesi s adresindedir. Örneğin: "KustoConnectionString": "Data Source=https://your_cluster.kusto.windows.net;Database=your_Database;Fed=True;AppClientId=your_AppId;AppKey=your_AppKey;Authority Id=your_TenantId. |
| Tablo Adı | Gerekli. Verileri alınacak tablo. |
| MappingRef | isteğe bağlı. Kümede zaten tanımlanmış bir eşleme başvurusu geçirme özniteliği. |
| ManagedServiceIdentity (Yönetilen Servis Kimliği) | isteğe bağlı. Yönetilen kimlik, Azure Veri Gezgini bağlanmak için kullanılabilir. Sistem tarafından yönetilen kimlik kullanmak için "system" kullanın. Diğer kimlik adları, kullanıcı tarafından yönetilen kimlik olarak yorumlanır. |
| Veri Biçimi | isteğe bağlı. Varsayılan veri biçimi şeklindedir multijson/json. Biçim numaralandırmasında. Örnekler doğrulanır ve CSV ve JSON biçimleri için sağlanır. |
Ek Açıklamalar
Java işlevleri çalışma zamanı kitaplığında@KustoInput ek açıklama ()com.microsoft.azure.functions.kusto.annotation.KustoOutput kullanılır.
| Öğe | Açıklama |
|---|---|
| Adı | Gerekli. Sorguyu temsil eden değişkenin adı işlev koduyla sonuç alır. |
| veritabanı | Gerekli. Sorgunun yürütülmesi gereken veritabanı. |
| bağlantı | Gerekli. ortam değişkenleri veya işlev uygulaması ayarları aracılığıyla çözümlenen bağlantı dizesi tutan değişkenin adı. değişkenini KustoConnectionStringaramak için varsayılan değerdir. Çalışma zamanında, bu değişken ortama göre aranılır. bağlantı dizesi belgeleri Kusto bağlantı dizesi s adresindedir. Örneğin: "KustoConnectionString": "Data Source=https://your_cluster.kusto.windows.net;Database=your_Database;Fed=True;AppClientId=your_AppId;AppKey=your_AppKey;Authority Id=your_TenantId. |
| tabloAdı | Gerekli. Verileri alınacak tablo. |
| mappingRef | isteğe bağlı. Kümede zaten tanımlanmış bir eşleme başvurusu geçirme özniteliği. |
| veri formatı | isteğe bağlı. Varsayılan veri biçimi şeklindedir multijson/json. Biçim numaralandırmasında. Örnekler doğrulanır ve CSV ve JSON biçimleri için sağlanır. |
| managedServiceIdentity | Yönetilen kimlik, Azure Veri Gezgini bağlanmak için kullanılabilir. Sistem tarafından yönetilen kimlik kullanmak için "system" kullanın. Diğer kimlik adları, kullanıcı tarafından yönetilen kimlik olarak yorumlanır. |
Yapılandırma
Aşağıdaki tabloda, function.json dosyasında ayarladığınız bağlama yapılandırma özellikleri açıklanmaktadır.
| function.json özelliği | Açıklama |
|---|---|
| Tür | Gerekli. olarak ayarlanmalıdır kusto. |
| yön | Gerekli. olarak ayarlanmalıdır out. |
| Adı | Gerekli. Sorguyu temsil eden değişkenin adı işlev koduyla sonuç alır. |
| veritabanı | Gerekli. Sorgunun yürütülmesi gereken veritabanı. |
| bağlantı | Gerekli. ortam değişkenleri veya işlev uygulaması ayarları aracılığıyla çözümlenen bağlantı dizesi tutan değişkenin adı. değişkenini KustoConnectionStringaramak için varsayılan değerdir. Çalışma zamanında, bu değişken ortama göre aranılır. bağlantı dizesi belgeleri Kusto bağlantı dizesi s adresindedir. Örneğin: "KustoConnectionString": "Data Source=https://your_cluster.kusto.windows.net;Database=your_Database;Fed=True;AppClientId=your_AppId;AppKey=your_AppKey;Authority Id=your_TenantId. |
| tabloAdı | Gerekli. Verileri alınacak tablo. |
| mappingRef | isteğe bağlı. Kümede zaten tanımlanmış bir eşleme başvurusu geçirme özniteliği. |
| veri formatı | isteğe bağlı. Varsayılan veri biçimi şeklindedir multijson/json. Biçim numaralandırmasında. Örnekler doğrulanır ve CSV ve JSON biçimleri için sağlanır. |
| managedServiceIdentity | Yönetilen kimlik, Azure Veri Gezgini bağlanmak için kullanılabilir. Sistem tarafından yönetilen kimlik kullanmak için "system" kullanın. Diğer kimlik adları, kullanıcı tarafından yönetilen kimlik olarak yorumlanır. |
Yerel olarak geliştirme yaparken uygulama ayarlarınızı koleksiyondaki local.settings.json dosyasınaValues ekleyin.
Kullanım
Özniteliğin oluşturucusunun veritabanı ve öznitelikleri TableName, MappingRefve DataFormat ve bağlantı ayarı adı alır. KQL komutu bir KQL deyimi veya KQL işlevi olabilir. bağlantı dizesi ayarı adı Kusto bağlantı dizesi içerenlocal.settings.json(yerel geliştirme için) karşılık gelir. Örneğin:"KustoConnectionString": "Data Source=https://your_cluster.kusto.windows.net;Database=your_Database;Fed=True;AppClientId=your_AppId;AppKey=your_AppKey;Authority Id=your_TenantId Giriş bağlaması tarafından yürütülen sorgular parametreleştirilir. KQL parametrelerinde sağlanan değerler çalışma zamanında kullanılır.
Önemli
En iyi güvenlik için işlev uygulamanızın anahtarları içeren bir bağlantı dizesi kullanmak yerine Azure Veri Gezgini'ne bağlanırken yönetilen kimlikleri kullanması gerekir. Daha fazla bilgi için bkz. Kusto bağlantı dizesi s. Kimlik tabanlı mananaged bağlantıları için bağlama tanımında özelliğini ayarlamanız managedServiceIdentity gerekir.