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.
Bu öğreticide, belirleyici, yinelenebilir sonuçlarla tam KQL sorguları çalıştıran parametreli bir Kusto aracı oluşturacaksınız. Kullanıcılar "son yedi günün hatalarını göster" gibi sorular sorduğunda, aracı parametreyi değiştirir ve tam sorgunuzu Azure Veri Gezgini veritabanınızda yürütür.
Bu eğitimde şunları öğreniyorsunuz:
- Agent Canvas'ta bir Kusto aracı oluşturun
- Parametreli KQL sorgusu tanımlama
- Portalda sorguyu test edin
- Aracı özel bir araca bağlayın ve oyun alanında doğrulayın.
Tahmini süre: 15 dakika
Önkoşullar
Başlamadan önce aşağıdaki önkoşullara sahip olduğunuzdan emin olun:
- Aracının yönetilen kimliğine Verilen AllDatabasesViewer rolüne sahip bir Azure Veri Gezgini kümesi. Daha fazla bilgi için Kusto araçları önkoşulları bölümüne bakın.
- Kusto bağlayıcısı yapılandırıldı. Daha fazla bilgi için bkz. Kusto bağlayıcısı ayarlama.
- Azure SRE Aracısı portalında Builder'a erişim.
Aracı Arayüzü'ne gidin
Araçları oluşturup yönetmek için Agent Canvas'ı açın.
- SRE Aracısı portalını açın.
- Temsilcinizi seçin.
- Sol gezinti bölmesinde Oluşturucu'ya tıklayın.
- Aracı Tuvali'ne tıklayın.
Araç oluşturma formunu açma
Araç çubuğundan araç oluşturma işlemini başlatın.
- Araç çubuğunun üst kısmındaki açılır listeden Oluştur'u seçin.
- Araç>Kusto aracı'nı seçin.
Araç ayrıntılarını doldurma
Formu araç yapılandırmanızla doldurun.
| Alan | Değer | Açıklama |
|---|---|---|
| Araç adı | QueryAppLogs |
Ajanın bu aracı nasıl referans aldığı. |
| Açıklama | "Belirtilen zaman aralığındaki hatalar için AppLogs tablosunu sorgula" | Temsilcinin bu aracı ne zaman kullanması gerektiğinde. |
| Bağlayıcısı | (Kusto bağlayıcınızı seçin) | Kullanılacak Azure Veri Gezgini bağlantısı. |
| Veritabanı | (bağlayıcı URL'sinden otomatik doldurulur) | Veritabanınızın adı. |
| Sorgu | Aşağıdaki örneğe bakın. | Parametreleri olan KQL sorgunuz. |
Aşağıdaki örnek sorguyu girin:
AppLogs
| where Timestamp > ago(##timeRange##)
| where Level == "Error"
| order by Timestamp desc
| take 10
##timeRange## sözdizimi bir parametre tanımlar. Birisi "son 24 saatteki hataları göster" sorusunu sorduğunda timeRange = 24h ajan tamamlar.
Parametresini ekleme
Sorgunuzun kullandığı parametreyi tanımlayın.
- Parametreler bölümüne kaydırın.
- Parametre ekle'yi seçin.
- Aşağıdaki değerleri girin:
-
İsim:
timeRange - Tür: Karakter Dizisi
- Açıklama: "Ne kadar süre geriye bakılacağını belirlemek için (örneğin, 1s, 24s, 7g)"
-
İsim:
parametresi sorgunuzun altındaki Parametreler tablosunda görüntülenir.
Sorguyu test edin
Kaydetmeden önce sorgunun başarıyla çalıştığını doğrulayın.
- Formun alt kısmındaki Test'i seçin.
- için
timeRangebir test değeri girin (örneğin,7d). - Sorgunun başarıyla yürütüldüğünden emin olun.
Yürütme süresini ve sorgunun çalıştığını onaylayan yeşil bir onay işareti görürsünüz. Sorgu sıfır satır döndürse bile, onay işareti sorgu söz diziminin geçerli olduğu anlamına gelir.
Aracı oluştur
Kusto aracınızı kaydetmek için Oluştur'u seçin.
Aracı özel bir ajana ekleme
Aracınızı oluşturdunuz ancak özel bir aracıya eklemediniz. Aracı kullanabilmesi için aracı ekleyin.
- Tuval görünümünde özel aracınızı bulun.
- Özel aracı kartının sağ tarafındaki + düğmesine tıklayın.
- Var olan araçları ekle'yi seçin.
- Kusto aracınızı listeden denetleyin.
- Araç ekle'yi seçin.
Özel temsilci kartınıza araç eklediğinizde araç sayısı artar.
Oyun alanında aracı doğrula
Aracının Kusto aracını doğru bir şekilde çağırdığını test edin.
- Sol gezinti bölmesinde Test Oyun Alanı'nı seçin.
- Açılan listeden özel aracınızı seçin.
- Şunu sorun: "Son yedi günün hatalarını göster"
- Aracınız
timeRange = 7dile aracı çağırır.
Temsilcinin Kusto aracınızı çağırıp sorgu sonuçlarını getirdiğini görmeniz gerekir. Tam olarak yazdığınız sorgu kümenizde çalıştırılacaktır.
Parametre söz dizimi
Sorgularınızdaki parametre yer tutucularını işaretlemek için ##parameterName## veya $parameterName kullanın.
query: |-
AppExceptions
| where TimeGenerated > ago(##timeRange##)
| where ServiceName == "$serviceName"
Her iki söz dizimi de aynı şekilde çalışır. Aracı, çalışma sırasında değerleri değiştirir.
Yürütme modları
Aşağıdaki tabloda Kusto araçları için kullanılabilir yürütme modları açıklanmaktadır.
| Modu | Şu durumlarda kullanın: |
|---|---|
Query |
YAML'de satır içi sorguyu tanımlayın (en yaygın). |
Function |
Sorgu mantığını Azure Veri Gezgini kümesinde işlev olarak depolayın. |
Script |
Sorguyu bir dış .kql dosyaya yerleştirin. |
# Function mode example
spec:
type: KustoTool
mode: Function
function: GetRecentErrors
# Script mode example
spec:
type: KustoTool
mode: Script
file: queries/complex-analysis.kql
Örnek: Dağıtım ilişkilendirme aracı
Aşağıdaki YAML tanımı, dağıtımları belirtilen hizmet ve zaman aralığıyla ilişkilendiren bir Kusto aracı oluşturur.
api_version: azuresre.ai/v2
kind: ExtendedAgentTool
metadata:
name: get-recent-deployments
spec:
type: KustoTool
connector: devops-logs
mode: Query
database: deployments
description: "Get deployments in a time range for a service"
toolMode: Auto
query: |-
Deployments
| where TimeGenerated > ago(##timeRange##)
| where ServiceName == "##serviceName##"
| project TimeGenerated, Version, DeployedBy, Environment
| order by TimeGenerated desc
parameters:
- name: serviceName
type: string
description: "Name of the service"
- name: timeRange
type: string
description: "How far back to look (e.g., 1h, 24h)"
Aracı düzenleme veya silme
Oluşturma işleminden sonra araçları değiştirebilir veya kaldırabilirsiniz.
Edit
- Aracı Tuvali'nde araç düğümünü seçerek bilgi panelini açın.
- Panel üst bilgisinde düzenle (kalem) simgesini seçin.
- Düzenle iletişim kutusu, geçerli ayarlarınızla birlikte açılır. Sorguyu, parametreleri veya bağlayıcıyı değiştirin.
- Kaydetseçeneğini seçin.
Delete
- Bilgi panelini açmak için araç düğümünü seçin.
- Panel üst bilgisinde ⋯ (diğer eylemler) menüsünü seçin.
- Silme Aracı'nı seçin.
- silme işlemini iletişim kutusunda onaylayın.
Uyarı
Bir aracı sildiğinizde, aracıyı kullanan özel aracılardan hemen kaldırırsınız.