Aracılığıyla paylaş


Azure AI Search'te sorgu isteklerini izleme

Bu makalede, yerleşik ölçümleri ve kaynak günlüğünü kullanarak sorgu performansını ve hacmini ölçme işlemi açıklanmaktadır. Ayrıca, uygulama kullanıcıları tarafından girilen sorgu dizelerinin nasıl alındığı da açıklanır.

Azure portalında sorgu gecikme süresi, sorgu yükü (QPS) ve azaltma ile ilgili temel ölçümler gösterilir. Bu ölçümlere beslenen geçmiş verilere portalda 30 gün boyunca erişilebilir. Daha uzun saklama için veya işletimsel verileri ve sorgu dizelerini raporlamak için, günlüğe kaydedilen işlemleri ve ölçümleri kalıcı hale getirmek için bir depolama seçeneği belirten bir tanılama ayarı eklemeniz gerekir. Log Analytics çalışma alanını günlüğe kaydedilen işlemler için hedef olarak öneririz. Kusto sorguları ve veri keşfi bir Log Analytics çalışma alanını hedefler.

Veri ölçümünün bütünlüğünü en üst düzeye çıkaran koşullar şunlardır:

  • Faturalanabilir bir hizmet (Temel veya Standart katmanda oluşturulmuş bir hizmet) kullanın. Ücretsiz hizmet birden çok abone tarafından paylaşılır ve bu da yükler değiştikçe belirli bir volatiliteye neden oluyor.

  • İçerilen ve yalıtılmış bir ortam oluşturmak için mümkünse tek bir çoğaltma ve bölüm kullanın. Birden çok çoğaltma kullanıyorsanız, sorgu ölçümleri birden çok düğümde ortalama olarak alınır ve bu da sonuçların duyarlığı düşürebilir. Benzer şekilde, birden çok bölüm verilerin bölündüğü anlamına gelir ve dizin oluşturma işlemi de devam ederse bazı bölümlerin farklı verilere sahip olma olasılığı vardır. Sorgu performansını ayarladığınızda, tek bir düğüm ve bölüm test için daha kararlı bir ortam sağlar.

İpucu

Ek istemci tarafı kodu ve Uygulama Analizler, uygulama kullanıcılarınızın ilgisini çeken şeylere ilişkin daha ayrıntılı içgörüler için tıklama verilerini de yakalayabilirsiniz. Daha fazla bilgi için bkz . Trafik analizinde arama yapma.

Sorgu birimi (QPS)

Birim, bir dakikalık bir süre içinde yürütülen sorguların ortalama, sayı, en düşük veya en yüksek değerleri olarak bildirilebilen yerleşik bir ölçüm olan Saniyede Arama Sorguları (QPS) olarak ölçülür. Ölçümler için bir dakikalık aralıklar (TimeGrain = "PT1M") sistem içinde sabitlenmiştir.

Sorguların milisaniye cinsinden yürütülmesi yaygın bir durum olduğundan ölçümlerde yalnızca saniye olarak ölçen sorgular görünür.

Toplama Türü Açıklama
Ortalama Sorgu yürütmenin gerçekleştiği bir dakika içindeki ortalama saniye sayısı.
Sayı Bir dakikalık aralık içinde günlüğe yayılan ölçümlerin sayısı.
En Büyük Bir dakika boyunca kaydedilen saniyede en yüksek arama sorgusu sayısı.
Minimum Bir dakika içinde kaydedilen saniyede en düşük arama sorgusu sayısı.
Sum Dakika içinde yürütülen tüm sorguların toplamı.

Örneğin, bir dakika içinde şuna benzer bir desene sahip olabilirsiniz: SearchQueriesPerSecond için en yüksek yük bir saniye, ardından ortalama yük 58 saniye ve son olarak yalnızca bir sorguyla bir saniye (en düşük değerdir).

Başka bir örnek: Bir düğüm 100 ölçüm yayarsa ve burada her ölçümün değeri 40, "Sayı" 100, "Toplam" 4000, "Ortalama" 40 ve "Maksimum" 40 olur.

Sorgu performansı

Hizmet genelinde sorgu performansı, arama gecikme süresi (sorgunun tamamlanması ne kadar sürer) ve kaynak çekişmesi nedeniyle bırakılan kısıtlanmış sorgular olarak ölçülür.

Arama gecikme süresi

Toplama Türü Gecikme süresi
Ortalama Milisaniye cinsinden ortalama sorgu süresi.
Sayı Bir dakikalık aralık içinde günlüğe yayılan ölçümlerin sayısı.
En Büyük Örnekteki en uzun çalışan sorgu.
Minimum Örnekteki en kısa çalışan sorgu.
Toplam Örnekteki tüm sorguların toplam yürütme süresi( bir dakika) içinde yürütülür.

Arama Gecikme süresi ölçümlerinin aşağıdaki örneğini göz önünde bulundurun: Ortalama süresi 23,26 milisaniye olan 86 sorgu örneklendi. En az 0 değeri bazı sorguların bırakıldığını gösterir. En uzun süre çalışan sorgunun tamamlanması 1000 milisaniye sürdü. Toplam yürütme süresi 2 saniyeydi.

Latency aggregations

Kısıtlanmış sorgular

Kısıtlanmış sorgular, işlenmek yerine bırakılan sorgulara başvurur. Çoğu durumda, azaltma hizmeti çalıştırmanın normal bir parçasıdır. Bir sorun olduğuna dair bir gösterge olmayabilir.

Yürütmedeki istek sayısı kapasiteyi aştığında azaltma gerçekleşir. Bir çoğaltma döndürmeden çıkarıldığında veya dizin oluşturma sırasında kısıtlanmış isteklerde bir artış görebilirsiniz. Hem sorgu hem de dizin oluşturma istekleri aynı kaynak kümesi tarafından işlenir.

Hizmet, kaynak tüketimine göre isteklerin bırakılıp bırakılmayacağını belirler. Bellek, CPU ve disk GÇ arasında tüketilen kaynakların yüzdesi bir süre boyunca ortalama olarak alınır. Bu yüzde eşiği aşarsa, istek hacmi azaltılana kadar dizine yönelik tüm istekler kısıtlanır.

İstemcinize bağlı olarak, kısıtlanmış bir istek şu yollarla belirtilir:

  • Hizmet hata döndürüyor "You are sending too many requests. Please try again later."
  • Hizmet, hizmetin şu anda kullanılamadığını belirten bir 503 hata kodu döndürür.
  • Portalı kullanıyorsanız (örneğin, Arama Gezgini), sorgu sessizce bırakılır ve Yeniden Ara'yı seçmeniz gerekir.

Kısıtlanmış sorguları onaylamak için Kısıtlanmış arama sorguları ölçümünü kullanın. Bu makalede açıklandığı gibi portalda ölçümleri keşfedebilir veya bir uyarı ölçümü oluşturabilirsiniz. Örnekleme aralığı içinde bırakılan sorgular için, yürütülmeyen sorguların yüzdesini almak için Toplam'ı kullanın.

Toplama Türü Azaltma
Ortalama Aralık içinde bırakılan sorguların yüzdesi.
Sayı Bir dakikalık aralık içinde günlüğe yayılan ölçümlerin sayısı.
En Büyük Aralık içinde bırakılan sorguların yüzdesi.
Minimum Aralık içinde bırakılan sorguların yüzdesi.
Toplam Aralık içinde bırakılan sorguların yüzdesi.

Kısıtlanmış Arama Sorguları Yüzdesi(minimum, maksimum, ortalama ve toplam) için, tümü aynı değere sahiptir: bir dakika boyunca toplam arama sorgusu sayısından kısıtlanan arama sorgularının yüzdesi.

Aşağıdaki ekran görüntüsünde, ilk sayı günlük sayısına (veya günlüğe gönderilen ölçüm sayısına) göredir. En üstte veya ölçümün üzerine gelindiğinde görüntülenen diğer toplamalar ortalama, maksimum ve toplam değerlerini içerir. Bu örnekte hiçbir istek bırakılmadı.

Throttled aggregations

Portalda ölçümleri keşfetme

Geçerli sayılara hızlı bir bakış için, hizmetin Genel Bakış sayfasındaki İzleme sekmesinde, toplama türünü değiştirme seçeneğiyle saat, gün ve hafta cinsinden ölçülen sabit aralıklar üzerinden üç ölçüm (Arama gecikmesi, Saniye başına arama sorguları (arama birimi başına) ve Azaltılmış Arama Sorguları Yüzdesi gösterilir.

Daha ayrıntılı araştırma için İzleme menüsünden ölçüm gezginini açın; böylece eğilimleri veya anomalileri keşfetmek için verileri katmanlayabilir, yakınlaştırabilir ve görselleştirebilirsiniz. Ölçüm grafiği oluşturma öğreticisini tamamlayarak ölçüm gezgini hakkında daha fazla bilgi edinin.

  1. İzleme bölümünde Ölçümler'i seçerek kapsam arama hizmetinize ayarlanmış ölçüm gezginini açın.

  2. Ölçüm'ün altında açılan listeden birini seçin ve tercih edilen tür için kullanılabilir toplamaların listesini gözden geçirin. Toplama, toplanan değerlerin her zaman aralığı boyunca nasıl örneklenmiş olduğunu tanımlar.

    Metrics explorer for QPS metric

  3. Sağ üst köşede zaman aralığını ayarlayın.

  4. Bir görselleştirme seçin. Varsayılan değer çizgi grafiktir.

  5. Ölçüm ekle'yi seçip farklı toplamalar seçerek daha fazla toplama katmanı uygulayın.

  6. Çizgi grafiğin ilgilendiği bir alanı yakınlaştırın. Fare işaretçisini alanın başına getirin, sol fare düğmesini seçip basılı tutun, alanın diğer tarafına sürükleyin ve düğmeyi bırakın. Grafik bu zaman aralığını yakınlaştırıyor.

Kullanıcılar tarafından girilen sorgu dizelerini döndürme

Kaynak günlüğünü etkinleştirdiğinizde, sistem AzureDiagnostics tablosunda sorgu isteklerini yakalar. Önkoşul olarak, günlüğe kaydedilen işlemler için log analytics çalışma alanı veya başka bir depolama seçeneği gibi bir hedef belirtmiş olmanız gerekir.

  1. İzleme bölümünde Günlükler'i seçerek Log Analytics'te boş bir sorgu penceresi açın.

  2. İşlem adı, sorgu dizesi, sorgulanan dizin ve bulunan belge sayısından oluşan bir tablo sonuç kümesi döndürerek işlemleri aramak Query.Search için aşağıdaki ifadeyi çalıştırın. Son iki deyim, sonuçlarınızdaki gürültüyü azaltan bir örnek dizin üzerinde boş veya belirtilmemiş bir aramadan oluşan sorgu dizelerini dışlar.

       AzureDiagnostics
    | project OperationName, Query_s, IndexName_s, Documents_d
    | where OperationName == "Query.Search"
    | where Query_s != "?api-version=2023-07-01-preview&search=*"
    | where IndexName_s != "realestate-us-sample-index"
    
  3. İsteğe bağlı olarak, belirli bir söz dizimi veya dize üzerinde arama yapmak için Query_s sütun filtresi ayarlayın. Örneğin, üzerine filtre uygulama eşittir?api-version=2023-11-01&search=*&%24filter=HotelName.

    Logged query strings

Bu teknik geçici araştırma için işe yarasa da, rapor oluşturmak sorgu dizelerini çözümlemeye daha uygun bir düzende birleştirmenize ve sunmanıza olanak tanır.

Uzun süre çalışan sorguları tanımlama

Yalnızca ölçüm olarak seçilenleri değil tüm sorguların numaralarını almak için süre sütununu ekleyin. Bu verileri sıralamak, tamamlanması en uzun süren sorguları gösterir.

  1. İzleme bölümünde günlük bilgilerini sorgulamak için Günlükler'i seçin.

  2. Milisaniye cinsinden süreye göre sıralanmış sorgular döndürmek için aşağıdaki temel sorguyu çalıştırın. En uzun süre çalışan sorgular en üsttedir.

    AzureDiagnostics
    | project OperationName, resultSignature_d, DurationMs, Query_s, Documents_d, IndexName_s
    | where OperationName == "Query.Search"
    | sort by DurationMs
    

    Sort queries by duration

Ölçüm uyarısı oluşturma

Ölçüm uyarısı, bildirim göndermek veya önceden tanımladığınız bir düzeltici eylemi tetikleme için bir eşik oluşturur. Sorgu yürütmeyle ilgili uyarılar oluşturabilirsiniz, ancak bunları kaynak durumu, arama hizmeti yapılandırma değişiklikleri, beceri yürütme ve belge işleme (dizin oluşturma) için de oluşturabilirsiniz.

Tüm eşikler kullanıcı tanımlı olduğundan, uyarıyı tetikleyen etkinlik düzeyi hakkında bir fikriniz olmalıdır.

Sorgu izleme için, arama gecikme süresi ve kısıtlanmış sorgular için bir ölçüm uyarısı oluşturmak yaygın olarak görülür. Sorguların ne zaman bırakıldığını biliyorsanız, yükü azaltan veya kapasiteyi artıran çözümler arayabilirsiniz. Örneğin, dizin oluşturma sırasında kısıtlanmış sorgular artarsa, sorgu etkinliği azalana kadar erteleyebilirsiniz.

Belirli bir çoğaltma bölümü yapılandırmasının sınırlarını zorluyorsanız, sorgu birimi eşikleri (QPS) için uyarılar ayarlamak da yararlıdır.

  1. İzleme'nin altında Uyarılar'ıve ardından Uyarı kuralı oluştur'u seçin.

  2. Koşul'un altında Ekle'yi seçin.

  3. Sinyal mantığını yapılandırın. Sinyal türü için ölçümler'i ve ardından sinyali seçin.

  4. Sinyali seçtikten sonra, koşulları ayarlamaya nasıl devam edilebileceğine ilişkin bilinçli bir karar için geçmiş verileri görselleştirmek için bir grafik kullanabilirsiniz.

  5. Ardından aşağı kaydırarak Uyarı mantığı'na gidin. Kavram kanıtı için test amacıyla yapay olarak düşük bir değer belirtebilirsiniz.

  6. Ardından bir Eylem Grubu belirtin veya oluşturun. Bu, eşik karşılandığında çağrılacak yanıttır. Bu bir anında iletme bildirimi veya otomatik yanıt olabilir.

  7. Son olarak Uyarı ayrıntılarını belirtin. Uyarıyı adlandırın ve açıklayın, bir önem derecesi değeri atayın ve kuralın etkin veya devre dışı durumda oluşturulup oluşturulmayacağını belirtin.

Bir e-posta bildirimi belirttiyseniz, "Microsoft Azure"dan konu satırı "Azure: Etkin Önem Derecesi: 3 <your rule name>" olan bir e-posta alırsınız.

Sonraki adımlar

Henüz yapmadıysanız, tüm gözetim özellikleri hakkında bilgi edinmek için arama hizmeti izlemenin temellerini gözden geçirin.