Sdílet prostřednictvím


Monitorování požadavků na dotazy ve službě Azure AI Search

Tento článek vysvětluje, jak měřit výkon dotazů a svazek pomocí integrovaných metrik a protokolování prostředků. Vysvětluje také, jak získat řetězce dotazu zadané uživateli aplikace.

Azure Portal zobrazuje základní metriky týkající se latence dotazů, načítání dotazů (QPS) a omezování. Historická data, která se do těchto metrik zasílají, se dají získat přístup na webu Azure Portal po dobu 30 dnů. Pokud chcete delší uchovávání dat nebo hlásit provozní data a řetězce dotazů, musíte přidat nastavení diagnostiky, které určuje možnost úložiště pro trvalé protokolované operace a metriky. Jako cíl pro protokolované operace doporučujeme pracovní prostor služby Log Analytics. Dotazy Kusto a zkoumání dat cílí na pracovní prostor služby Log Analytics.

Mezi podmínky, které maximalizují integritu měření dat, patří:

  • Použijte fakturovatelnou službu (službu vytvořenou na úrovni Basic nebo Standard). Bezplatná služba je sdílena více předplatiteli, což představuje určitou nestálost při posunu zatížení.

  • Pokud je to možné, použijte jednu repliku a oddíl k vytvoření obsaženého a izolovaného prostředí. Pokud používáte více replik, metriky dotazů se průměrují napříč několika uzly, což může snížit přesnost výsledků. Podobně více oddílů znamená, že data jsou rozdělena, s potenciálem, že některé oddíly můžou mít různá data, pokud probíhá indexování. Při ladění výkonu dotazů poskytuje jeden uzel a oddíl stabilní prostředí pro testování.

Tip

Pomocí dalšího kódu na straně klienta a Application Insights můžete také zachytit data klikni a získat tak hlubší přehled o tom, co uživatele vaší aplikace zajímá. Další informace najdete v tématu Analýza provozu vyhledávání.

Objem dotazů (QPS)

Objem se měří jako vyhledávací dotazy za sekundu (QPS), která je integrovaná metrika, která se dá hlásit jako průměr, počet, minimum nebo maximální hodnoty dotazů, které se spouštějí během jedné minuty. Jednominutové intervaly (TimeGrain = "PT1M") pro metriky jsou v systému pevné.

Další informace o metrikě SearchQueriesPerSecond najdete v tématu Vyhledávací dotazy za sekundu.

Výkon dotazů

Výkon dotazů pro celou službu se měří jako latence vyhledávání a omezené dotazy.

Latence vyhledávání

Latence vyhledávání udává, jak dlouho trvá dokončení dotazu. Další informace o metrikě SearchLatency najdete v tématu Latence vyhledávání.

Podívejte se na následující příklad metrik latence vyhledávání: vzorkování 86 dotazů s průměrnou dobou trvání 23,26 milisekund. Minimálně 0 značí, že se některé dotazy vynechaly. Dokončení nejdéle běžícího dotazu trvalo 1000 milisekund. Celková doba provádění byla 2 sekundy.

Agregace latence

Omezené dotazy

Omezené dotazy odkazují na dotazy, které se místo zpracování zahodí. Ve většině případů je omezování normální součástí provozu služby. Nemusí to nutně značit, že je něco špatného. Další informace o metrikě ThrottledSearchQueriesPercentage najdete v tématu Procento omezených vyhledávacíchdotazůch

Na následujícím snímku obrazovky je prvním číslem počet (nebo počet metrik odeslaných do protokolu). Mezi další agregace, které se zobrazují nahoře nebo když najedete myší na metriku, zahrnují průměr, maximum a součet. V této ukázce nebyly zrušeny žádné požadavky.

Omezené agregace

Prozkoumání metrik na webu Azure Portal

Pro rychlý přehled aktuálních čísel se na kartě Monitorování na stránce Přehled služby zobrazují tři metriky (latence vyhledávání, vyhledávací dotazy za sekundu (za jednotku vyhledávání) a omezené procento vyhledávacích dotazů v pevných intervalech měřených v hodinách, dnech a týdnech s možností změny typu agregace.

Pokud chcete prozkoumat podrobnější zkoumání, otevřete Průzkumníka metrik z nabídky Monitorování , abyste mohli data vrstvit, přiblížit a vizualizovat, abyste mohli zkoumat trendy nebo anomálie. Další informace o Průzkumníku metrik najdete v tomto kurzu při vytváření grafu metrik.

  1. V části Monitorování vyberte Metriky a otevřete Průzkumníka metrik s oborem nastaveným na vaši vyhledávací službu.

  2. V části Metrika vyberte jednu z rozevíracího seznamu a zkontrolujte seznam dostupných agregací pro preferovaný typ. Agregace definuje způsob vzorkování shromážděných hodnot v každém časovém intervalu.

    Průzkumník metrik pro metriku QPS

  3. V pravém horním rohu nastavte časový interval.

  4. Zvolte vizualizaci. Výchozí hodnota je spojnicový graf.

  5. Více agregací vrstvíte tak, že zvolíte Přidat metriku a vyberete různé agregace.

  6. Přiblížení oblasti zájmu ve spojnicovém grafu Umístěte ukazatel myši na začátek oblasti, vyberte a podržte levé tlačítko myši, přetáhněte ho na druhou stranu oblasti a uvolněte tlačítko. Graf se přiblíží v daném časovém rozsahu.

Vrácení řetězců dotazu zadaných uživateli

Když povolíte protokolování prostředků, systém zachytává požadavky na dotazy v tabulce AzureDiagnostics . Předpokladem je, že jste již zadali cíl pro protokolované operace, a to buď pracovní prostor služby Log Analytics, nebo jinou možnost úložiště.

  1. V části Monitorování vyberte Protokoly a otevřete prázdné okno dotazu v Log Analytics.

  2. Spuštěním následujícího výrazu vyhledejte Query.Search operace, vracejte tabulkovou sadu výsledků skládající se z názvu operace, řetězce dotazu, dotazovaného indexu a počtu nalezených dokumentů. Poslední dva příkazy vyloučí řetězce dotazu, které se skládají z prázdného nebo nezadaného vyhledávání, přes ukázkový index, který snižuje šum ve výsledcích.

       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"
    
  3. Volitelně můžete nastavit filtr sloupců pro Query_s a vyhledat konkrétní syntaxi nebo řetězec. Můžete například filtrovat , že se rovná ?api-version=2024-07-01&search=*&%24filter=HotelName.

    Protokolované řetězce dotazů

I když tato technika funguje pro ad hoc šetření, vytvoření sestavy umožňuje konsolidovat a prezentovat řetězce dotazů v rozložení, které je pro analýzu vhodnější.

Identifikace dlouhotrvajících dotazů

Přidejte sloupec doby trvání, abyste získali čísla pro všechny dotazy, nejen pro ty, které jsou vyzvednuty jako metrika. Řazením těchto dat zjistíte, které dotazy se dokončí nejdéle.

  1. V části Monitorování vyberte Protokoly , které se mají dotazovat na informace protokolu.

  2. Spuštěním následujícího základního dotazu vrátíte dotazy seřazené podle doby trvání v milisekundách. Nejdéle běžící dotazy jsou v horní části.

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

    Řazení dotazů podle doby trvání

Vytvoření upozornění na metriku

Upozornění na metriku vytvoří prahovou hodnotu pro odeslání oznámení nebo aktivaci nápravné akce, kterou definujete předem. Můžete vytvářet výstrahy související se spouštěním dotazů, ale můžete je také vytvořit pro stav prostředků, změny konfigurace vyhledávací služby, provádění dovedností a zpracování dokumentů (indexování).

Všechny prahové hodnoty jsou definované uživatelem, takže byste měli mít představu o tom, jakou úroveň aktivity by měla upozornění aktivovat.

U monitorování dotazů je běžné vytvořit upozornění na metriku pro latenci vyhledávání a omezené dotazy. Pokud víte, kdy se dotazy zahodí, můžete vyhledat nápravné prostředky, které snižují zatížení nebo zvyšují kapacitu. Pokud se například omezené dotazy během indexování zvýší, můžete je odložit, dokud se aktivita dotazu nezlevní.

Pokud odesíláte omezení konkrétní konfigurace oddílu repliky, je také užitečné nastavit upozornění na prahové hodnoty svazků dotazů (QPS).

  1. V části Monitorování vyberte Výstrahy a pak vyberte Vytvořit pravidlo upozornění.

  2. V části Podmínka vyberte Přidat.

  3. Konfigurace logiky signálu Pro typ signálu zvolte metriky a pak vyberte signál.

  4. Po výběru signálu můžete pomocí grafu vizualizovat historická data pro informované rozhodnutí o tom, jak pokračovat v nastavování podmínek.

  5. Dále se posuňte dolů k logice upozornění. Pro testování konceptu můžete pro účely testování zadat uměle nízkou hodnotu.

  6. Dále zadejte nebo vytvořte skupinu akcí. Jedná se o odpověď, která se má vyvolat při splnění prahové hodnoty. Může se jednat o nabízené oznámení nebo automatizovanou odpověď.

  7. Nakonec zadejte podrobnosti výstrahy. Pojmenujte a popište výstrahu, přiřaďte hodnotu závažnosti a určete, jestli se má pravidlo vytvořit v povoleném nebo zakázaném stavu.

Pokud jste zadali e-mailové oznámení, obdržíte e-mail z Microsoft Azure s předmětem Azure: Aktivovaná závažnost: 3 <your rule name>.

Další kroky

Pokud jste to ještě neudělali, projděte si základy monitorování vyhledávací služby a seznamte se s celou řadou funkcí dohledu.