.create function komutu
Verilen adla yeniden kullanılabilir bir KQL sorgusu olan saklı bir işlev oluşturur. İşlev tanımı veritabanı meta verileriyle kalıcı hale eklenir.
İşlevler diğer işlevleri çağırabilir (özyineleme desteklenmez). Ayrıca, let
deyimlere İşlev Gövdesi'nin bir parçası olarak izin verilir. Bkz let
. deyimler.
Parametre türleri ve CSL deyimleri için kurallar deyimleriyle aynıdırlet
.
İzinler
Bu komutu çalıştırmak için en az Veritabanı Kullanıcısı izinlerine sahip olmanız gerekir.
Sözdizimi
.create
function
[ ifnotexists
] [ with
(
propertyName =
propertyValue [,
...])
] functionName(
parameters gövdesi)
{
}
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Zorunlu | Açıklama |
---|---|---|---|
ifnotexists |
string |
Belirtilirse, işlev yalnızca işlev henüz mevcut değilse oluşturulur. | |
functionName | string |
✔️ | Oluşturulacak veya değiştirecek işlevin adı. |
propertyName, propertyValue | string |
Anahtar-değer özellik çiftlerinin virgülle ayrılmış listesi. Desteklenen özelliklere bakın. | |
parametreler | string |
İşlev için gereken parametrelerin virgülle ayrılmış listesi. Her parametrenin biçimi ParameterName: ParameterDataType olmalıdır. |
|
gövde | string |
✔️ | Kullanıcı tanımlı işlev ifadesi. |
Desteklenen özellikler
Adı | Tür | Açıklama |
---|---|---|
docstring |
string |
Kullanıcı arabirimi amacıyla işlevin açıklaması. |
folder |
string |
KULLANıCı arabirimi işlevleri kategorilere ayırma için kullanılan bir klasörün adı. |
view |
bool |
Bu işlevi depolanmış görünüm olarak gösterir. Depolanan görünümler arama ve birleşim * senaryolarına katılabilir. Daha fazla bilgi için bkz . Görünümler. |
skipvalidation |
bool |
İşlevde doğrulama mantığı çalıştırılıp çalıştırılmayacağını belirler ve işlev geçerli değilse işlem başarısız olur. Varsayılan değer: false . |
İpucu
Bir işlev kümeler arası sorgular içeriyorsa ve bir Kusto Sorgu Dili betiği kullanarak işlevi yeniden oluşturmayı planlıyorsanız olarak ayarlayıntrue
skipvalidation
.
Döndürülenler
Çıkış parametresi | Type | Açıklama |
---|---|---|
Ad | string |
İşlevin adı. |
Parametreler | string |
İşlevin gerektirdiği parametreler. |
Gövde | string |
(Sıfır veya daha fazla) let deyimleri ve ardından işlev çağrısı üzerine değerlendirilen geçerli bir CSL ifadesi. |
Klasör | string |
KULLANıCı arabirimi işlevleri kategorilere ayırma için kullanılan bir klasör. Bu parametre işlevin çağrılma şeklini değiştirmez. |
DocString | string |
Kullanıcı arabirimi amacıyla işlevin açıklaması. |
Not
- İşlev zaten varsa:
- Bayrak belirtilirse
ifnotexists
, komut yoksayılır (değişiklik uygulanmaz). - Bayrak belirtilmezse
ifnotexists
bir hata döndürülür. - Mevcut bir işlevi değiştirmek için bkz.
.alter function
- Bayrak belirtilirse
- Deyimlerde
let
tüm veri türleri desteklenmez. Desteklenen türler şunlardır: boole, dize, uzun, tarih saat, zaman aralığı, çift ve dinamik. - İşlevin anlam doğrulamasını atlamak için kullanın
skipvalidation
. İşlevler yanlış sırada oluşturulduğunda ve F2 kullanan F1 daha önce oluşturulduğunda bu kullanışlıdır.
Örnekler
Basit tanıtım işlevi
.create function
with (docstring = 'Simple demo function', folder='Demo')
MyFunction1() {StormEvents | take 100}
Veri Akışı Adı | Parametreler | Gövde | Klasör | DocString |
---|---|---|---|---|
MyFunction1 | () | {StormEvents | take 100} | Tanıtım | Basit tanıtım işlevi |
Parametresi olan demo işlevi
.create function
with (docstring = 'Demo function with parameter', folder='Demo')
MyFunction2(myLimit: long) {StormEvents | take myLimit}
Veri Akışı Adı | Parametreler | Gövde | Klasör | DocString |
---|---|---|---|---|
MyFunction2 | (myLimit:long) | {StormEvents | take myLimit} | Tanıtım | Parametresi olan demo işlevi |
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