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 Application Insights ile, 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.
SearchQueriesPerSecond ölçümü hakkında daha fazla bilgi edinmek için bkz . Saniyede sorgu arama.
Sorgu performansı
Hizmet genelinde sorgu performansı, arama gecikme süresi ve kısıtlanmış sorgular olarak ölçülür.
Arama gecikme süresi
Arama gecikmesi, bir sorguyu tamamlamanın ne kadar sürdüğünü gösterir. SearchLatency ölçümü hakkında daha fazla bilgi edinmek için bkz . Arama gecikme süresi.
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.
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. ThrottledSearchQueriesPercentage ölçümü hakkında daha fazla bilgi edinmek için bkz . Kısıtlanmış arama sorguları 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ı.
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.
İzleme bölümünde Ölçümler'i seçerek kapsam arama hizmetinize ayarlanmış ölçüm gezginini açın.
Ö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.
Sağ üst köşede zaman aralığını ayarlayın.
Bir görselleştirme seçin. Varsayılan değer çizgi grafiktir.
Ölçüm ekle'yi seçip farklı toplamalar seçerek daha fazla toplama katmanı uygulayın.
Ç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.
İzleme bölümünde Günlükler'i seçerek Log Analytics'te boş bir sorgu penceresi açın.
İş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=2024-07-01&search=*" | where IndexName_s != "realestate-us-sample-index"
İ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 uygulamak eşittir
?api-version=2024-07-01&search=*&%24filter=HotelName
.
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.
İzleme bölümünde günlük bilgilerini sorgulamak için Günlükler'i seçin.
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
Ö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.
İzleme'nin altında Uyarılar'ı ve ardından Uyarı kuralı oluştur'u seçin.
Koşul'un altında Ekle'yi seçin.
Sinyal mantığını yapılandırın. Sinyal türü için ölçümler'i ve ardından sinyali seçin.
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.
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.
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.
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.