Monitorování, metriky a protokoly přístupu pro Azure CDN v reálném čase

Se službou Azure CDN z Microsoft můžete monitorovat prostředky následujícími způsoby, které vám pomůžou řešit, sledovat a ladit problémy.

  • Nezpracované protokoly poskytují bohaté informace o každém požadavku, který CDN přijme. Nezpracované protokoly se liší od protokolů aktivit. Protokoly aktivit poskytují přehled o operacích provedených s prostředky Azure.
  • Metriky, které zobrazují čtyři klíčové metriky ve službě CDN, včetně poměru přístupů k bajtu, počtu požadavků, velikosti odpovědi a celkové latence. Poskytuje také různé dimenze pro rozdělení metrik.
  • Výstraha, která zákazníkovi umožňuje nastavit upozornění na klíčové metriky
  • Další metriky, které zákazníkům umožňují používat Azure Log Analytics k povolení dalších metrik hodnoty. Nabízíme také ukázky dotazů pro několik dalších metrik v rámci Azure Log Analytics.

Důležité

Funkce nezpracovaných protokolů HTTP je pro Azure CDN dostupná z Microsoft.

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Přihlášení k Azure

Přihlaste se k webu Azure Portal na adrese https://portal.azure.com.

Konfigurace – Azure Portal

Konfigurace nezpracovaných protokolů pro Azure CDN z Microsoft profilu:

  1. V nabídce Azure Portal vyberte Všechny prostředky>><your-CDN-profile>.

  2. V části Monitorování vyberte Nastavení diagnostiky.

  3. Vyberte + Přidat nastavení diagnostiky.

    Přidejte nastavení diagnostiky pro profil CDN.

    Důležité

    Nezpracované protokoly jsou k dispozici pouze na úrovni profilu, zatímco agregované protokoly stavového kódu HTTP jsou k dispozici na úrovni koncového bodu.

  4. V části Nastavení diagnostiky zadejte název nastavení diagnostiky v části Název nastavení diagnostiky.

  5. Vyberte AzureCdnAccessLog a nastavte uchovávání ve dnech.

  6. Vyberte Podrobnosti o cíli. Cílové možnosti jsou:

    • Odeslání do Log Analytics
      • Vyberte předplatné a pracovní prostor služby Log Analytics.
    • Archivace do účtu úložiště
      • Vyberte předplatné a účet úložiště.
    • Streamování do centra událostí
      • Vyberte zásady Předplatné, Obor názvů centra událostí, Název centra událostí (volitelné) a Název centra událostí.

    Nakonfigurujte cíl pro nastavení protokolu.

  7. Vyberte Uložit.

Konfigurace – Azure PowerShell

Pomocí rutiny Set-AzDiagnosticSetting nakonfigurujte nastavení diagnostiky pro nezpracované protokoly.

Data uchovávání informací jsou definována parametrem -RetentionInDays v příkazu .

Poznámka

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projděte téma Instalace Azure PowerShell. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Povolení diagnostických protokolů v účtu úložiště

  1. Přihlaste se k Azure PowerShell:

    Connect-AzAccount 
    
  2. Pokud chcete v účtu úložiště povolit diagnostické protokoly, zadejte tyto příkazy. Nahraďte proměnné vašimi hodnotami:

    ## Variables for the commands ##
    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $storageacct = <your-storage-account-name>
    $diagname = <your-diagnostic-setting-name>
    $days = '30'
    
    $cdn = Get-AzCdnProfile -ResourceGroupName $rsg -ProfileName $cdnprofile
    
    $storage = Get-AzStorageAccount -ResourceGroupName $rsg -Name $storageacct
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -StorageAccountId $storage.id -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
    

Povolení diagnostických protokolů pro pracovní prostor služby Log Analytics

  1. Přihlaste se k Azure PowerShell:

    Connect-AzAccount 
    
  2. Pokud chcete povolit diagnostické protokoly pro pracovní prostor služby Log Analytics, zadejte tyto příkazy. Nahraďte proměnné vašimi hodnotami:

    ## Variables for the commands ##
    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $workspacename = <your-log-analytics-workspace-name>
    $diagname = <your-diagnostic-setting-name>
    $days = '30'
    
    $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint
    
    $workspace = Get-AzOperationalInsightsWorkspace -ResourceGroupName $rsg -Name $workspacename
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -WorkspaceId $workspace.ResourceId -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
    

Povolení diagnostických protokolů pro obor názvů centra událostí

  1. Přihlaste se k Azure PowerShell:

    Connect-AzAccount 
    
  2. Pokud chcete povolit diagnostické protokoly pro obor názvů centra událostí, zadejte tyto příkazy. Nahraďte proměnné vašimi hodnotami:

    ## Variables for the commands ##
    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $evthubnamespace = <your-event-hub-namespace-name>
    $diagname = <your-diagnostic-setting-name>
    
    $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint
    
    $eventhub = Get-AzEventHubNamespace -ResourceGroupName $rsg -Name $eventhubname
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -EventHubName $eventhub.id -Enabled $true -Category AzureCdnAccessLog -RetentionEnabled 1 -RetentionInDays $days
    

Nezpracované vlastnosti protokolů

Azure CDN ze služby Microsoft Service v současné době poskytuje nezpracované protokoly. Nezpracované protokoly poskytují jednotlivé požadavky rozhraní API, přičemž každá položka má následující schéma:

Vlastnost Popis
Název hostitele back-endu Pokud se požadavek předává do back-endu, toto pole představuje název hostitele back-endu. Toto pole bude prázdné, pokud se požadavek přesměruje nebo přepošlí do místní mezipaměti (když pravidlo směrování povolí ukládání do mezipaměti).
CacheStatus Pro scénáře ukládání do mezipaměti toto pole definuje přístup do mezipaměti nebo chybějící přístup do mezipaměti v protokolu POP.
ClientIp IP adresa klienta, který vytvořil požadavek. Pokud požadavek obsahuje hlavičku X-Forwarded-For, ip adresa klienta se vybere ze stejné adresy.
ClientPort Port IP klienta, který vytvořil požadavek.
Metoda HTTP Metoda HTTP používaná požadavkem.
HttpStatusCode Stavový kód HTTP vrácený z proxy serveru. Pokud požadavek na vypršení časového limitu původu, hodnota Pro HttpStatusCode je nastavena na 0.
HttpStatusDetails Výsledný stav požadavku. Význam této řetězcové hodnoty najdete v referenční tabulce Status.
HttpVersion Typ požadavku nebo připojení.
POP Krátký název okraje, kam žádost přistála.
RequestBytes Velikost zprávy požadavku HTTP v bajtech, včetně hlaviček požadavku a textu požadavku.
Requesturi Identifikátor URI přijatého požadavku.
ResponseBytes Bajty odeslané back-endovým serverem jako odpověď
RoutingRuleName Název pravidla směrování, kterému požadavek odpovídal.
RulesEngineMatchNames Názvy pravidel, kterým žádost odpovídala.
Zabezpečeníprotocol Verze protokolu TLS/SSL používaná požadavkem nebo null, pokud není šifrování.
SentToOriginShield
(zastaralé) * Viz poznámky k vyřazení v následující části.
Pokud je true, znamená to, že žádost byla zodpovězena z mezipaměti origin shield místo z hraničního popu. Štít původu je nadřazená mezipaměť, která se používá ke zlepšení poměru přístupů k mezipaměti.
isReceivedFromClient Pokud je true, znamená to, že požadavek přišel od klienta. Pokud je false, požadavek je neúspěšný v hraničním zařízení (podřízený pop) a je odpovědí ze štítu původu (nadřazený POP).
TimeTaken Doba od prvního bajtu požadavku do služby Front Door do posledního bajtu odpovědi (v sekundách).
TrackingReference Jedinečný referenční řetězec, který identifikuje požadavek obsluhovaný službou Front Door, který se klientovi odešle také jako hlavička X-Azure-Ref. Vyžaduje se pro vyhledávání podrobností v protokolech přístupu pro konkrétní požadavek.
Useragent Typ prohlížeče, který klient použil.
Errorinfo Toto pole obsahuje konkrétní typ chyby pro zúžení oblasti řešení potíží.
Mezi možné hodnoty patří:
NoError: Indikuje, že nebyly nalezeny žádné chyby.
CertificateError: Obecná chyba certifikátu SSL.
CertificateNameCheckFailed: Název hostitele v certifikátu SSL je neplatný nebo se neshoduje.
ClientDisconnected: Požadavek selhal kvůli síťovému připojení klienta.
UnspecifiedClientError: Obecná chyba klienta.
InvalidRequest: Neplatný požadavek. Může k tomu dojít kvůli chybné hlavičce, textu a adrese URL.
DNSFailure: Selhání DNS.
DNSNameNotResolved: Název nebo adresu serveru se nepodařilo přeložit.
OriginConnectionAborted: Spojení s původem bylo náhle zastaveno.
OriginConnectionError: Obecná chyba připojení původu.
OriginConnectionRefused: Připojení k původu se nepodařilo navázat.
OriginError: Obecná chyba původu.
OriginInvalidResponse: Origin vrátil neplatnou nebo nerozpoznanou odpověď.
OriginTimeout: Časový limit pro žádost o původ vypršel.
ResponseHeaderTooBig: Původ vrátil příliš velkou hlavičku odpovědi.
RestrictedIP: Požadavek se zablokoval kvůli omezené IP adrese.
SSLHandshakeError: Nejde navázat připojení s původem kvůli selhání ssl zatřesení rukou.
UnspecifiedError: Došlo k chybě, která se nevešla do žádné z chyb v tabulce.
TimeToFirstByte Doba v milisekundách od přijetí požadavku Microsoft CDN do okamžiku odeslání prvního bajtu klientovi. Čas se měří pouze z Microsoft strany. Data na straně klienta se neměří.

Poznámka

Protokoly můžete zobrazit ve svém profilu Log Analytics spuštěním dotazu. Ukázkový dotaz by vypadal takto: AzureDiagnostics | where Category == "AzureCdnAccessLog"

Vyřazení štítu původu

Vlastnost nezpracovaného protokolu isSentToOriginShield je zastaralá a nahrazená novým polem isReceivedFromClient. Pokud už zastaralé pole používáte, použijte nové pole.

Nezpracované protokoly zahrnují protokoly vygenerované z hraniční sítě CDN (podřízený protokol POP) i ze štítu původu. Štít původu odkazuje na nadřazené uzly, které jsou strategicky umístěny po celém světě. Tyto uzly komunikují se servery původu a snižují zatížení provozu na zdroji.

Pro každou žádost, která přejde na štít původu, jsou k dispozici 2 položky protokolu:

  • Jeden pro hraniční uzly
  • Jeden pro štít původu.

Pokud chcete odlišit výchozí přenos dat nebo odpovědi z hraničních uzlů od štítu původu, můžete k získání správných dat použít pole isReceivedFromClient .

Pokud je hodnota false, znamená to, že požadavek se odpověděl ze štítu původu hraničním uzlům. Tento přístup je efektivní pro porovnání nezpracovaných protokolů s fakturačními daty. Neúčtují se poplatky za výchozí přenos dat ze štítu původu do hraničních uzlů. Za výchozí přenos dat z hraničních uzlů do klientů se účtují poplatky.

Ukázka dotazu Kusto pro vyloučení protokolů vygenerovaných na štítu původu v Log Analytics

AzureDiagnostics 
| where OperationName == "Microsoft.Cdn/Profiles/AccessLog/Write" and Category == "AzureCdnAccessLog"  
| where isReceivedFromClient == true

Důležité

Funkce nezpracovaných protokolů HTTP je k dispozici automaticky pro všechny profily vytvořené nebo aktualizované po 25. únoru 2020. U profilů CDN vytvořených dříve byste měli po nastavení protokolování aktualizovat koncový bod CDN. Můžete například přejít na geografické filtrování v koncových bodech CDN a zablokovat libovolnou zemi nebo oblast, které nejsou relevantní pro jeho úlohu, a stisknout možnost Uložit.

Metriky

Azure CDN z Microsoft je integrovaná se službou Azure Monitor a publikuje čtyři metriky CDN, které pomáhají sledovat, řešit a ladit problémy.

Metriky se zobrazují v grafech a jsou přístupné přes PowerShell, rozhraní příkazového řádku a rozhraní API. Metriky CDN jsou bezplatné.

Azure CDN z Microsoft měří a odesílá metriky v 60sekundových intervalech. Zobrazení metrik na portálu může trvat až 3 minuty.

Další informace najdete v tématu Metriky služby Azure Monitor.

Metriky podporované službou Azure CDN z Microsoft

Metriky Description Dimenze
Poměr přístupů k bajtům* Procento výchozího přenosu dat z mezipaměti CDN vypočítané oproti celkovému výchozímu přenosu dat. Koncový bod
Počet požadavků Počet požadavků klientů obsluhovaných cdn. Země klienta koncového bodu
.
Oblast klienta.
Stav PROTOKOLU HTTP.
Skupina stavu PROTOKOLU HTTP.
Velikost odpovědi Počet bajtů odeslaných jako odpovědi z hraniční sítě CDN klientům. Země klienta koncového bodu
.
Oblast klienta.
Stav PROTOKOLU HTTP.
Skupina stavu PROTOKOLU HTTP.
TotalLatency Celková doba od požadavku klienta přijatého službou CDN do odeslání posledního bajtu odpovědi z CDN klientovi. Země klienta koncového bodu
.
Oblast klienta.
Stav PROTOKOLU HTTP.
Skupina stavu PROTOKOLU HTTP.

Poznámka

Pokud požadavek na vypršení časového limitu původu, hodnota Pro HttpStatusCode je nastavena na 0.

*Poměr přístupů k bajtům = (výchozí přenos z okraje – výchozí přenos z původního zdroje)/výchozí přenos dat z okraje

Scénáře vyloučené při výpočtu poměru přístupů k bajtům:

  • Explicitně nenakonfigurujete žádnou mezipaměť prostřednictvím chování při ukládání do mezipaměti stroje pravidel nebo řetězce dotazu.
  • Explicitně nakonfigurujete direktivu cache-control bez uložení nebo privátní mezipaměti.

Konfigurace metrik

  1. V nabídce Azure Portal vyberte Všechny prostředky>><your-CDN-profile>.

  2. V části Monitorování vyberte Metriky:

    Metriky pro profil CDN

  3. Vyberte Přidat metriku a vyberte metriku, která se má přidat:

    Přidejte a vyberte metriku pro profil CDN.

  4. Vyberte Přidat filtr a přidejte filtr:

    Použijte filtr na metriku.

  5. Pokud chcete zobrazit trend podle různých dimenzí, vyberte Použít rozdělení:

    Použijte na metriku rozdělení.

  6. Vyberte Nový graf a přidejte nový graf:

    Přidejte do zobrazení metrik nový graf.

Výstrahy

Upozornění na Microsoft CDN můžete nastavit tak, že vyberete Upozornění monitorování>>.

Vyberte Nové pravidlo upozornění pro metriky uvedené v části Metriky:

Nakonfigurujte upozornění pro koncový bod CDN.

Upozornění se bude účtovat na základě služby Azure Monitor. Další informace o upozorněních najdete v tématu Upozornění služby Azure Monitor.

Další metriky

Další metriky můžete za příplatek povolit pomocí Azure Log Analytics a nezpracovaných protokolů.

  1. Postupujte podle výše uvedených kroků v tématu Povolení diagnostiky k odesílání nezpracovaných protokolů do log Analytics.

  2. Vyberte pracovní prostor služby Log Analytics, který jste vytvořili:

    Výběr pracovního prostoru služby Log Analytics

  3. V pracovním prostoru služby Log Analytics v části Obecné vyberte Protokoly. Pak vyberte Začínáme:

    Pracovní prostor prostředků služby Log Analytics.

  4. Vyberte Profily CDN. Vyberte ukázkový dotaz, který chcete spustit, nebo zavřete obrazovku s ukázkou a zadejte vlastní dotaz:

    Obrazovka s ukázkovým dotazem

    Provádění dotazů.

  5. Pokud chcete zobrazit data podle grafu, vyberte Graf. Vyberte Připnout na řídicí panel a připněte graf na řídicí panel Azure:

    Připnutí grafu na řídicí panel

Další kroky

V tomto článku jste povolili nezpracované protokoly HTTP pro službu Microsoft CDN.

Další informace o Azure CDN a dalších službách Azure uvedených v tomto článku najdete tady: