Monitorování online koncových bodů
Azure Machine Learning využívá integraci se službou Azure Monitor ke sledování a monitorování metrik a protokolů pro online koncové body. Metriky můžete zobrazit v grafech, porovnávat metriky mezi koncovými body a nasazeními, připínat metriky na řídicí panely webu Azure Portal, konfigurovat výstrahy, dotazovat se na tabulky protokolů a odesílat protokoly do podporovaných cílů. Application Insights můžete také použít k analýze událostí z uživatelských kontejnerů.
Metriky: Pro metriky na úrovni koncového bodu, jako je latence požadavků, požadavky za minutu, nová připojení za sekundu a bajty sítě, můžete přejít k podrobnostem a zobrazit podrobné informace na úrovni nasazení nebo na úrovni stavu. Můžete také přejít k podrobnostem metrik na úrovni nasazení, jako je využití procesoru nebo GPU a využití paměti nebo disku na úrovni instance. Ve službě Monitor můžete tyto metriky sledovat v grafech a můžete nastavit řídicí panely a výstrahy pro další analýzu.
Protokoly: Metriky můžete odesílat do pracovního prostoru služby Log Analytics, kde můžete k dotazování protokolů použít syntaxi dotazu Kusto. K dalšímu zpracování můžete také odesílat metriky do účtů Služby Azure Storage nebo do služby Azure Event Hubs. Pro provoz, protokoly konzoly (kontejner) a události související s online koncovými body můžete použít vyhrazené tabulky protokolů. Dotazy Kusto podporují komplexní možnosti analýzy a spojování více tabulek.
Application Insights: Kurátorovaná prostředí zahrnují integraci s Application Insights. Tuto integraci můžete zapnout nebo vypnout při vytváření online nasazení. Když ji zapnete, předdefinované metriky a protokoly se posílají do Application Insights. Pak můžete použít integrované funkce Application Insights k další analýze. Mezi příklady těchto funkcí patří živé metriky, vyhledávání transakcí, zobrazení selhání a zobrazení výkonu.
V tomto článku se dozvíte, jak:
- Zvolte správnou metodu pro zobrazení a sledování metrik a protokolů.
- Zobrazte metriky vašeho online koncového bodu.
- Vytvořte řídicí panel pro metriky.
- Vytvořte upozornění na metriku.
- Zobrazte protokoly pro váš online koncový bod.
- Pomocí Application Insights můžete sledovat metriky a protokoly.
Požadavky
- Online koncový bod služby Azure Machine Learning
- Alespoň přístup čtenáře ke koncovému bodu
Použití metrik
Na webu Azure Portal můžete zobrazit stránky metrik pro online koncové body a nasazení.
Přístup k metrikám z studio Azure Machine Learning
Snadný způsob, jak získat přístup ke stránkám metrik, je prostřednictvím odkazů, které jsou k dispozici v uživatelském rozhraní studio Azure Machine Learning. Tyto odkazy najdete na kartě Podrobnosti na stránce koncového bodu. Tyto odkazy vedou na stránku metrik na webu Azure Portal pro koncový bod nebo nasazení.
Pokud chcete získat přístup ke stránkám metrik prostřednictvím odkazů dostupných v sadě Studio, proveďte následující kroky:
V studio Azure Machine Learning přejděte do svého pracovního prostoru.
V části Prostředky vyberte Koncové body.
Vyberte název koncového bodu.
V části Atributy koncového bodu vyberte Zobrazit metriky.
Stránka metrik koncového bodu se otevře na webu Azure Portal.
V studio Azure Machine Learning přejděte na stránce koncového bodu do části nasazení a pak vyberte Zobrazit metriky.
Stránka metrik nasazení se otevře na webu Azure Portal.
Přístup k metrikám z webu Azure Portal
Dalším způsobem, jak zobrazit stránku metrik koncového bodu nebo nasazení, je přejít přímo na web Azure Portal:
Přejděte na Azure Portal.
Přejděte do online koncového bodu nebo prostředku nasazení.
Online koncové body a nasazení jsou prostředky Azure Resource Manageru. Najdete je tak, že přejdete do skupiny prostředků a pak vyhledáte typy prostředků, které jsou v online koncovém bodu Machine Learning a online nasazení Machine Learning.
Na stránce prostředku v části Monitorování vyberte Metriky.
Dostupné metriky
Metriky, které vidíte, závisí na vybraném prostředku. Metriky pro online koncové body a online nasazení se liší.
Metriky v oboru koncového bodu
Informace o metrikách dostupných v oboru online koncového bodu najdete v tématu Podporované metriky pro Microsoft.MachineLearningServices/workspaces/onlineEndpoints.
Omezování šířky pásma
Šířka pásma je omezena, pokud dojde k překročení limitů kvót pro spravované online koncové body. Další informace o limitech pro online koncové body najdete v tématu Online koncové body služby Azure Machine Learning a dávkové koncové body v článku o kvótách a omezeních ve službě Azure Machine Learning. Určení, jestli jsou požadavky omezené:
- Monitorujte metriku bajtů sítě.
- Zkontrolujte následující pole v přívěsech odpovědí:
ms-azureml-bandwidth-request-delay-ms
ams-azureml-bandwidth-response-delay-ms
. Hodnoty polí jsou zpoždění v milisekundách omezování šířky pásma.
Další informace najdete v tématu Problémy s omezením šířky pásma.
Metriky v oboru nasazení
Informace o metrikách dostupných v oboru nasazení najdete v tématu Podporované metriky pro Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments.
Vytváření řídicích panelů a upozornění
Ve službě Monitor můžete vytvářet řídicí panely a výstrahy založené na metrikách.
Vytváření řídicích panelů a vizualizace dotazů
Můžete vytvořit vlastní řídicí panely, abyste mohli vizualizovat metriky z více zdrojů na webu Azure Portal, včetně metrik pro váš online koncový bod. Další informace o vytváření řídicích panelů a vizualizaci dotazů najdete v tématu Vytváření a sdílení řídicích panelů dat Log Analytics a vytváření vlastních řídicích panelů klíčových ukazatelů výkonu pomocí Application Insights.
Vytváření výstrah
Můžete také vytvořit vlastní upozornění, abyste dostávali oznámení o důležitých aktualizacích stavu vašeho online koncového bodu:
Na webu Azure Portal přejděte na stránku metrik a pak vyberte Nové pravidlo upozornění.
V okně Vybrat signál vyberte signál, pro který chcete vytvořit výstrahu, a pak vyberte Použít.
Na stránce Vytvořit pravidlo upozornění zadejte prahovou hodnotu a upravte všechna další nastavení, která chcete upravit. Další informace o nastavení pravidla upozornění najdete v tématu Konfigurace podmínek pravidla upozornění. Pak vyberte Další: Akce.
V okně Vybrat skupiny akcí vytvořte nebo vyberte skupinu akcí a určete, co se stane při aktivaci upozornění. Další informace najdete v tématu Konfigurace podrobností pravidla upozornění.
Výběrem možnosti Zkontrolovat a vytvořit dokončete vytváření upozornění.
Automatické škálování na základě metrik
Nasazení můžete nakonfigurovat tak, aby se škálovat automaticky na základě metrik. Pokud chcete zapnout funkci automatického škálování, můžete použít uživatelské rozhraní nebo kód.
Možnosti kódu jsou Azure Machine Learning CLI a sada Azure Machine Learning SDK pro Python. Při použití kódu nakonfigurujete podmínky pro aktivaci automatického škálování zadáním názvu rozhraní REST API metrik.
- Názvy metrik koncového bodu, které se mají použít v kódu, najdete ve sloupci Název v rozhraní REST API v tabulce v podporovaných metrikách pro Microsoft.MachineLearningServices/workspaces/onlineEndpoints.
- Názvy metrik nasazení, které se mají použít v kódu, najdete ve sloupci Název v rozhraní REST API v tabulkách v podporovaných metrikách pro Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments.
Další informace najdete v tématu Automatické škálování online koncových bodů ve službě Azure Machine Learning.
Použití protokolů
Existují tři protokoly, které můžete zapnout pro online koncové body:
AmlOnlineEndpointTrafficLog: Tento protokol přenosů poskytuje způsob, jak zkontrolovat informace o požadavcích na koncový bod. Tento protokol je užitečný v následujících případech:
- Odpověď na žádost není 200 a chcete další informace. Sloupec
ResponseCodeReason
v protokolu uvádí důvod. Popis stavových kódů a důvodů najdete ve stavových kódech HTTPS v článku o řešení potíží s online koncovými body. - Chcete vyhledat kód odpovědi a důvod odpovědi modelu pro požadavek.
ModelStatusReason
TytoModelStatusCode
informace poskytují sloupce. - Chcete znát dobu trvání žádosti. Protokoly poskytují rozpis latence. Tento rozpis zobrazuje celkovou dobu trvání, dobu trvání požadavku, dobu odezvy a zpoždění způsobené omezováním sítě.
- Chcete zkontrolovat počet nedávných požadavků, které jsou úspěšné a neúspěšné. Tyto informace poskytují protokoly.
- Odpověď na žádost není 200 a chcete další informace. Sloupec
AmlOnlineEndpointConsoleLog: Tento protokol obsahuje příkazy, které kontejnery zapisují jako výstup do konzoly. Tento protokol je užitečný v následujících případech:
- Kontejner se nepovede spustit. Protokol konzoly může být užitečný pro ladění.
- Chcete monitorovat chování kontejneru a zajistit správné zpracování všech požadavků.
- Chcete trasovat požadavek ze vstupního síťového bodu online koncového bodu do kontejneru. Můžete použít dotaz Log Analytics, který spojí ID požadavku s informacemi z protokolů AmlOnlineEndpointConsoleLog a AmlOnlineEndpointTrafficLog.
- Chcete například spustit analýzu výkonu, abyste zjistili čas potřebný ke zpracování jednotlivých požadavků modelu.
AmlOnlineEndpointEventLog: Tento protokol obsahuje informace o události o životním cyklu kontejneru. V současné době protokol poskytuje informace o následujících typech událostí:
Název Zpráva BackOff Opětovné restartování neúspěšného kontejneru Natažený Image kontejneru "<IMAGE_NAME>" už na počítači existuje. Zabití Sonda odezvy na serveru odvození kontejneru selhala, bude restartována. Vytvořeno Vytvoření image kontejneru – fetcher Vytvořeno Vytvoření serveru pro odvození kontejneru Vytvořeno Vytvoření modelu kontejneru – připojení LivenessProbeFailed Sonda aktivity selhala: <FAILURE_CONTENT> ReadinessProbeFailed Sonda připravenosti selhala: <FAILURE_CONTENT> Zahájeno Spuštěná image kontejneru – fetcher Zahájeno Spuštěno odvození kontejneru - server Zahájeno Spuštěné připojení modelu kontejneru Zabití Zastavení odvozování kontejneru – server Zabití Zastavení připojení modelu kontejneru
Zapnutí protokolů
Důležité
Protokolování používá funkci Monitorování ve službě Log Analytics. Pokud aktuálně nemáte pracovní prostor služby Log Analytics, můžete ho vytvořit pomocí kroků v části Vytvoření pracovního prostoru.
Na webu Azure Portal přejděte do skupiny prostředků, která obsahuje váš koncový bod, a pak vyberte koncový bod.
V části Monitorování vyberte Nastavení diagnostiky a pak vyberte Přidat nastavení diagnostiky.
V okně Nastavení diagnostiky zadejte následující informace:
- Vedle názvu nastavení diagnostiky zadejte název nastavení.
- V části Protokoly vyberte kategorie protokolů, které chcete zapnout.
- V části Podrobnosti o cíli vyberte Možnost Odeslat do pracovního prostoru služby Log Analytics a pak vyberte předplatné a pracovní prostor služby Log Analytics, který se má použít.
Zvolte Uložit.
Důležité
Dostupnost připojení k pracovnímu prostoru služby Log Analytics může trvat až hodinu. Než budete pokračovat kroky v další části, počkejte hodinu.
Dotazování protokolů
Odešlete žádosti o bodování do koncového bodu za účelem vytvoření položek v protokolech.
Přejděte na Azure Portal. Pokud chcete protokoly otevřít, použijte jednu z následujících možností:
- Přejděte na stránku vlastností vašeho online koncového bodu. V části Monitorování vyberte Protokoly.
- Přejděte do svého pracovního prostoru služby Log Analytics. Vlevo vyberte Protokoly.
Zavřete okno centra Dotazy, které se ve výchozím nastavení otevře.
V části Jiné poklikejte na AmlOnlineEndpointConsoleLog. Pokud AmlOnlineEndpointConsoleLog nevidíte, zadejte tuto hodnotu do vyhledávacího pole.
Vyberte Spustit.
Vzorové dotazy
Ukázkové dotazy jsou k dispozici pro použití. Pokud chcete zobrazit dotazy, proveďte následující kroky:
Podrobnosti o sloupci protokolu
Následující tabulky obsahují podrobné informace o datech uložených v jednotlivých protokolech:
AmlOnlineEndpointTrafficLog
Vlastnost | Popis |
---|---|
metoda | Metoda, kterou klient požaduje. |
Cesta | Cesta, kterou klient požaduje. |
SubscriptionId | ID předplatného strojového učení online koncového bodu. |
AzureMLWorkspaceId | ID pracovního prostoru strojového učení online koncového bodu. |
AzureMLWorkspaceName | Název pracovního prostoru strojového učení online koncového bodu. |
Název koncového bodu | Název online koncového bodu. |
DeploymentName | Název online nasazení. |
Protokol | Protokol požadavku. |
ResponseCode | Konečný kód odpovědi, který se vrátí klientovi. |
ResponseCodeReason | Poslední důvod kódu odpovědi, který se vrátí klientovi. |
ModelStatusCode | Stavový kód odpovědi z modelu. |
ModelStatusReason | Důvod stavu odpovědi z modelu. |
RequestPayloadSize | Celkový počet bajtů přijatých od klienta |
ResponsePayloadSize | Celkový počet bajtů odeslaných zpět klientovi. |
UserAgent | Hlavička uživatelského agenta požadavku, včetně komentářů, ale zkrácená na maximálně 70 znaků. |
XRequestId | ID požadavku, které Azure Machine Learning vygeneruje pro interní trasování. |
XMSClientRequestId | ID sledování, které klient vygeneruje. |
TotalDurationMs | Doba trvání v milisekundách od počátečního času požadavku do okamžiku odeslání posledního bajtu odpovědi zpět klientovi. Pokud se klient odpojí, doba trvání trvá od času spuštění do doby odpojení klienta. |
RequestDurationMs | Doba trvání v milisekundách od počátečního času požadavku do okamžiku přijetí posledního bajtu požadavku od klienta. |
ResponseDurationMs | Doba trvání v milisekundách od počátečního času požadavku do okamžiku čtení prvního bajtu odpovědi z modelu. |
RequestThrottlingDelayMs | Zpoždění v milisekundách při přenosu dat požadavku kvůli omezování sítě. |
ResponseThrottlingDelayMs | Zpoždění v milisekundách při přenosu dat odpovědi kvůli omezování sítě. |
AmlOnlineEndpointConsoleLog
Vlastnost | Popis |
---|---|
TimeGenerated | Časové razítko UTC v čase, kdy se protokol generuje |
OperationName | Operace přidružená k záznamu protokolu |
InstanceId | ID instance, která generuje záznam protokolu |
DeploymentName | Název nasazení přidruženého k záznamu protokolu |
ContainerName | Název kontejneru, ve kterém se protokol vygeneruje |
Zpráva | Obsah protokolu |
AmlOnlineEndpointEventLog
Vlastnost | Popis |
---|---|
TimeGenerated | Časové razítko UTC v čase, kdy se protokol generuje |
OperationName | Operace přidružená k záznamu protokolu |
InstanceId | ID instance, která generuje záznam protokolu |
DeploymentName | Název nasazení přidruženého k záznamu protokolu |
Název | Název události |
Zpráva | Obsah události |
Použití Application Insights
Kurátorovaná prostředí zahrnují integraci s Application Insights. Prostřednictvím této integrace se do Application Insights odesílají integrované metriky a protokoly. V důsledku toho můžete k další analýze použít integrované funkce Application Insights. Mezi příklady těchto funkcí patří živé metriky, vyhledávání transakcí, zobrazení selhání a zobrazení výkonu.
Další informace najdete v přehledu Application Insights.
Integraci s Application Insights můžete zapnout při vytváření online nasazení v sadě Studio. Na stránce Nasazení v části Diagnostika Application Insights vyberte Povoleno.
Když zapnete Application Insights, uvidíte grafy monitorování aktivit vysoké úrovně pro spravovaný online koncový bod. V sadě Studio přejděte na stránku koncového bodu a pak vyberte kartu Monitorování .