Diagnostické protokoly – Azure Content Delivery Network
Důležité
30. září 2027 bude vyřazena služba Azure CDN Standard od Microsoftu (Classic). Abyste se vyhnuli přerušení služeb, je důležité do 30. září 2027 migrovat profily Azure CDN Standard z Microsoftu (classic) na úroveň Azure Front Door Standard nebo Premium. Další informace najdete v tématu Azure CDN Standard od Microsoftu (klasického) vyřazení.
Azure CDN z Edgio bude vyřazeno z Januray 15, 2025. Před tímto datem musíte migrovat úlohu do služby Azure Front Door, abyste se vyhnuli přerušení služeb. Další informace najdete v tématu Azure CDN z nejčastějších dotazů k vyřazení Edgio.
Pomocí diagnostických protokolů Azure můžete zobrazit základní analýzy a uložit je do jednoho nebo více cílů, mezi které patří:
- Účet služby Azure Storage
- Pracovní prostor služby Log Analytics
- Azure Event Hubs
Tato funkce je k dispozici v koncových bodech sítě pro doručování obsahu pro všechny cenové úrovně.
Diagnostické protokoly umožňují exportovat základní metriky využití z koncového bodu sítě pro doručování obsahu do různých druhů zdrojů, abyste je mohli využívat vlastním způsobem. Můžete provést následující typy exportu dat:
- Exportujte data do úložiště objektů blob, exportujte do souboru CSV a generujte grafy v Excelu.
- Exportujte data do služby Event Hubs a korelují s daty z jiných služeb Azure.
- Export dat do protokolů služby Azure Monitor a zobrazení dat ve vlastním pracovním prostoru služby Log Analytics
Pro následující kroky se vyžaduje profil služby Azure Content Delivery Network. Než budete pokračovat, přečtěte si článek Vytvoření profilu a koncového bodu služby Azure Content Delivery Network.
Povolení protokolování prostřednictvím webu Azure Portal
Pro koncový bod služby Azure Content Delivery Network povolte protokolování podle těchto kroků:
Přihlaste se k portálu Azure.
Na webu Azure Portal přejděte na Všechny prostředky>vašeho-cdn-profile.
Vyberte koncový bod sítě pro doručování obsahu, pro který chcete povolit diagnostické protokoly:
V části Monitorování vyberte diagnostické protokoly:
Povolení protokolování pomocí Služby Azure Storage
Pokud chcete k ukládání protokolů použít účet úložiště, postupujte takto:
Poznámka:
K provedení těchto kroků se vyžaduje účet úložiště. Další informace najdete v tématu: Vytvoření účtu Azure Storage.
Jako název nastavení diagnostiky zadejte název nastavení diagnostického protokolu.
Vyberte Archivovat do účtu úložiště a pak vyberte CoreAnalytics.
V části Uchovávání (dny) zvolte počet dnů uchovávání. Uchovávání nulových dnů ukládá protokoly po neomezenou dobu.
Vyberte předplatné a účet úložiště pro protokoly.
Zvolte Uložit.
Odeslání do Log Analytics
Pokud chcete pro protokoly použít Log Analytics, postupujte takto:
Poznámka:
K provedení těchto kroků se vyžaduje pracovní prostor služby Log Analytics. Další informace najdete v tématu: Vytvoření pracovního prostoru služby Log Analytics na webu Azure Portal .
Jako název nastavení diagnostiky zadejte název nastavení diagnostického protokolu.
Vyberte Odeslat do Log Analytics a pak vyberte CoreAnalytics.
Vyberte předplatné a pracovní prostor služby Log Analytics pro protokoly.
Zvolte Uložit.
Streamování do centra událostí
Pokud chcete pro protokoly použít centrum událostí, postupujte takto:
Poznámka:
K provedení těchto kroků se vyžaduje centrum událostí. Další informace najdete v tématu: Rychlý start: Vytvoření centra událostí pomocí webu Azure Portal .
Jako název nastavení diagnostiky zadejte název nastavení diagnostického protokolu.
Vyberte Stream do centra událostí a pak vyberte CoreAnalytics.
Vyberte obor názvů odběru a centra událostí pro protokoly.
Zvolte Uložit.
Povolení protokolování prostřednictvím PowerShellu
Následující příklad ukazuje, jak povolit diagnostické protokoly prostřednictvím rutin Azure PowerShellu.
Poznámka:
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. 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ě
Přihlaste se k Azure PowerShellu:
Connect-AzAccount
Pokud chcete povolit diagnostické protokoly v účtu úložiště, zadejte tyto příkazy. Nahraďte proměnné hodnotami:
$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> $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint $storage = Get-AzStorageAccount -ResourceGroupName $rsg -Name $storageacct Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -StorageAccountId $storage.id -Enabled $true -Categories CoreAnalytics
Povolení diagnostických protokolů pro pracovní prostor služby Log Analytics
Přihlaste se k Azure PowerShellu:
Connect-AzAccount
Pokud chcete povolit diagnostické protokoly pro pracovní prostor služby Log Analytics, zadejte tyto příkazy. Nahraďte proměnné hodnotami:
$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> $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 -Categories CoreAnalytics
Povolení diagnostických protokolů pro obor názvů centra událostí
Přihlaste se k Azure PowerShellu:
Connect-AzAccount
Pokud chcete povolit diagnostické protokoly pro pracovní prostor služby Log Analytics, zadejte tyto příkazy. Nahraďte proměnné hodnotami:
$rsg = <your-resource-group-name> $cdnprofile = <your-cdn-profile-name> $cdnendpoint = <your-cdn-endpoint-name> $eventhubname = <your-event-hub-namespace-name> $diagname = <your-diagnostic-setting-name> $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -EventHubName $eventhubname -Enabled $true -Categories CoreAnalytics
Využívání diagnostických protokolů ze služby Azure Storage
Tato část popisuje schéma analýzy jádra sítě pro doručování obsahu, organizaci v účtu Azure Storage a poskytuje ukázkový kód pro stažení protokolů v souboru CSV.
Použití Průzkumník služby Microsoft Azure Storage
Pokud chcete nástroj stáhnout, přečtěte si Průzkumník služby Azure Storage. Po stažení a instalaci softwaru ho nakonfigurujte tak, aby používal stejný účet Azure Storage, který byl nakonfigurovaný jako cíl diagnostických protokolů sítě pro doručování obsahu.
- Otevřít Průzkumník služby Microsoft Azure Storage
- Vyhledání účtu úložiště
- Rozbalte uzel Kontejnery objektů blob pod tímto účtem úložiště.
- Vyberte kontejner s názvem insights-logs-coreanalytics.
- Výsledky se zobrazí v pravém podokně počínaje první úrovní jako resourceId=. Pokračujte v výběru jednotlivých úrovní, dokud nenajdete soubor PT1H.json. Vysvětlení cesty najdete v tématu Formát cesty objektu blob.
- Každý soubor PT1H.json objektu blob představuje analytické protokoly po dobu jedné hodiny pro konkrétní koncový bod sítě pro doručování obsahu nebo vlastní doménu.
- Schéma obsahu tohoto souboru JSON je popsáno ve schématu oddílu základních analytických protokolů.
Formát cesty k objektu blob
Základní analytické protokoly se generují každou hodinu a data se shromažďují a ukládají v jednom objektu blob Azure jako datová část JSON. Nástroj Průzkumníka služby Storage interpretuje '/' jako oddělovač adresářů a zobrazuje hierarchii. Cesta k objektu blob Azure se zobrazí, jako by byla hierarchická struktura a představuje název objektu blob. Název objektu blob se řídí následujícími konvencemi vytváření názvů:
resourceId=/SUBSCRIPTIONS/{Subscription Id}/RESOURCEGROUPS/{Resource Group Name}/PROVIDERS/MICROSOFT.CDN/PROFILES/{Profile Name}/ENDPOINTS/{Endpoint Name}/ y=/m=/d=/h=/m=/PT1H.json
Popis polí:
Hodnota | Popis |
---|---|
Subscription ID | ID předplatného Azure v globálně jedinečném formátu identifikátoru (GUID). |
Název skupiny prostředků | Název skupiny prostředků, do které patří prostředky sítě pro doručování obsahu. |
Název profilu | Název profilu sítě pro doručování obsahu |
Název koncového bodu | Název koncového bodu sítě pro doručování obsahu |
Year (Rok) | Čtyřmístné vyjádření roku, například 2017 |
Month | Dvouciferné vyjádření čísla měsíce 01=Leden ... 12=Prosinec |
Den | Dvouciferné vyjádření dne v měsíci |
PT1H.json | Skutečný soubor JSON, ve kterém jsou uložena analytická data |
Export základních analytických dat do souboru CSV
Pro přístup k základním analýzám je k dispozici vzorový kód pro nástroj. Tento nástroj umožňuje stáhnout soubory JSON do plochého formátu souboru odděleného čárkami, který lze použít k vytváření grafů nebo jiných agregací.
Nástroj můžete použít takto:
- Navštivte odkaz Na GitHub: https://github.com/Azure-Samples/azure-cdn-samples/tree/master/CoreAnalytics-ExportToCsv
- Stáhněte si kód.
- Podle pokynů zkompilujte a nakonfigurujte.
- Spusťte nástroj.
- Výsledný soubor CSV zobrazuje analytická data v jednoduché ploché hierarchii.
Zpoždění dat protokolu
Následující tabulka uvádí zpoždění dat protokolu pro Azure CDN Standard od Microsoftu a Azure CDN Standard/Premium z Edgio.
Zpoždění dat protokolů Microsoftu | Zpoždění dat protokolu Edgio |
---|---|
Zpožděno o 1 hodinu. | Zpoždění o 1 hodinu a může trvat až 2 hodiny, než se začnou zobrazovat po dokončení šíření koncového bodu. |
Typy diagnostických protokolů pro analýzu jádra sítě pro doručování obsahu
Microsoft v současné době nabízí pouze základní analytické protokoly, které obsahují metriky zobrazující statistiky odezvy HTTP a výchozí statistiky, jak je vidět z bodů pops/hran sítě pro doručování obsahu.
Podrobnosti metrik základní analýzy
Následující tabulka uvádí seznam metrik dostupných v základních analytických protokolech pro:
- Azure CDN Standard od Microsoftu
- Azure CDN Standard/Premium z Edgio
Ne všechny metriky jsou dostupné od všech poskytovatelů, i když tyto rozdíly jsou minimální. Tabulka také zobrazuje, jestli je daná metrika dostupná od poskytovatele. Metriky jsou k dispozici pouze pro koncové body sítě pro doručování obsahu, které na nich mají provoz.
Metrický | Popis | Microsoft | Edgio |
---|---|---|---|
RequestCountTotal | Celkový počet přístupů k žádostem během tohoto období | Ano | Yes |
RequestCountHttpStatus2xx | Počet všech požadavků, které způsobily kód HTTP 2xx (například 200, 202). | Ano | Yes |
RequestCountHttpStatus3xx | Počet všech požadavků, které způsobily kód HTTP 3xx (například 300, 302). | Ano | Yes |
RequestCountHttpStatus4xx | Počet všech požadavků, které způsobily kód HTTP 4xx (například 400, 404). | Ano | Yes |
RequestCountHttpStatus5xx | Počet všech požadavků, které způsobily kód HTTP 5xx (například 500, 504). | Ano | Yes |
RequestCountHttpStatusOthers | Počet všech ostatních kódů HTTP (mimo 2xx-5xx) | Ano | Yes |
RequestCountHttpStatus200 | Počet všech požadavků, které způsobily odpověď kódu HTTP 200 | Yes | No |
RequestCountHttpStatus206 | Počet všech požadavků, které způsobily odpověď kódu HTTP 206 | Yes | No |
RequestCountHttpStatus302 | Počet všech požadavků, které způsobily odpověď kódu HTTP 302 | Yes | No |
RequestCountHttpStatus304 | Počet všech požadavků, které způsobily odpověď kódu HTTP 304 | Yes | No |
RequestCountHttpStatus404 | Počet všech požadavků, které způsobily odpověď kódu HTTP 404 | Yes | No |
RequestCountCacheHit | Počet všech požadavků, které způsobily dosažení mezipaměti Prostředek se obsluhoval přímo z POP klientovi. | Ano | Yes |
RequestCountCacheMiss | Počet všech požadavků, které způsobily chybějící mezipaměť Neúspěšná mezipaměť znamená, že prostředek nebyl nalezen v protokolu POP nejblíže klientovi a byl načten z původního zdroje. | Ano | Yes |
RequestCountCacheNoCache | Počet všech požadavků na prostředek, který se znemožní ukládání do mezipaměti kvůli konfiguraci uživatele na hraničním zařízení | Ano | Yes |
RequestCountCacheUncacheable | Počet všech požadavků na prostředky, které brání v ukládání do mezipaměti hlavičkami Cache-Control a Expires prostředku. Tento počet značí, že by neměl být uložen v mezipaměti v protokolu POP nebo klientem HTTP. | Ano | Yes |
RequestCountCacheOthers | Počet všech požadavků se stavem mezipaměti, na které se výše uvedené metriky nevztahují. | No | Ano |
Výchozí hodnota | Odchozí přenos dat v GB | Ano | Yes |
EgressHttpStatus2xx | Odchozí přenos dat* pro odpovědi se stavovými kódy HTTP 2xx v GB. | Ano | Yes |
EgressHttpStatus3xx | Odchozí přenos dat pro odpovědi se stavovými kódy HTTP 3xx v GB | Ano | Yes |
EgressHttpStatus4xx | Odchozí přenos dat pro odpovědi se stavovými kódy HTTP 4xx v GB | Ano | Yes |
EgressHttpStatus5xx | Odchozí přenos dat pro odpovědi se stavovými kódy HTTP 5xx v GB | Ano | Yes |
EgressHttpStatusOthers | Odchozí přenos dat pro odpovědi s dalšími stavovými kódy HTTP v GB | Ano | Yes |
EgressCacheHit | Odchozí přenos dat pro odpovědi, které byly doručeny přímo z mezipaměti sítě pro doručování obsahu v síti pro doručování obsahu / hrany. | Ano | Yes |
EgressCacheMiss. | Odchozí přenos dat pro odpovědi, které nebyly nalezeny na nejbližším serveru POP, a načtené ze zdrojového serveru. | Ano | Yes |
EgressCacheNoCache | Odchozí přenos dat pro prostředky, které se nedají ukládat do mezipaměti kvůli konfiguraci uživatele na hraničním zařízení. | Ano | Yes |
EgressCacheUncacheable | Odchozí přenos dat pro prostředky, kterým brání v ukládání do mezipaměti řízení mezipaměti prostředku nebo vypršení platnosti hlaviček. Označuje, že by se nemělo ukládat do mezipaměti v protokolu POP ani v klientovi HTTP. | Ano | Yes |
EgressCacheOthers | Odchozí přenosy dat pro jiné scénáře mezipaměti | No | Ano |
*Odchozí přenos dat odkazuje na provoz doručované ze serverů POP sítě pro doručování obsahu do klienta.
Schéma základních analytických protokolů
Všechny protokoly jsou uložené ve formátu JSON a každá položka má pole řetězců podle následujícího schématu:
"records": [
{
"time": "2017-04-27T01:00:00",
"resourceId": "<ARM Resource Id of the CDN Endpoint>",
"operationName": "Microsoft.Cdn/profiles/endpoints/contentDelivery",
"category": "CoreAnalytics",
"properties": {
"DomainName": "<Name of the domain for which the statistics is reported>",
"RequestCountTotal": integer value,
"RequestCountHttpStatus2xx": integer value,
"RequestCountHttpStatus3xx": integer value,
"RequestCountHttpStatus4xx": integer value,
"RequestCountHttpStatus5xx": integer value,
"RequestCountHttpStatusOthers": integer value,
"RequestCountHttpStatus200": integer value,
"RequestCountHttpStatus206": integer value,
"RequestCountHttpStatus302": integer value,
"RequestCountHttpStatus304": integer value,
"RequestCountHttpStatus404": integer value,
"RequestCountCacheHit": integer value,
"RequestCountCacheMiss": integer value,
"RequestCountCacheNoCache": integer value,
"RequestCountCacheUncacheable": integer value,
"RequestCountCacheOthers": integer value,
"EgressTotal": double value,
"EgressHttpStatus2xx": double value,
"EgressHttpStatus3xx": double value,
"EgressHttpStatus4xx": double value,
"EgressHttpStatus5xx": double value,
"EgressHttpStatusOthers": double value,
"EgressCacheHit": double value,
"EgressCacheMiss": double value,
"EgressCacheNoCache": double value,
"EgressCacheUncacheable": double value,
"EgressCacheOthers": double value,
}
}
]
}
Kde čas představuje počáteční čas hranice hodiny, pro kterou jsou statistiky hlášeny. Metrika nepodporovaná poskytovatelem sítě pro doručování obsahu místo dvojité nebo celočíselné hodnoty má za následek hodnotu null. Tato hodnota null označuje absenci metriky a liší se od hodnoty 0. Jedna sada těchto metrik na doménu je nakonfigurovaná v koncovém bodu.
Příklady vlastností:
{
"DomainName": "azurecdntest.azureedge.net",
"RequestCountTotal": 480,
"RequestCountHttpStatus2xx": 480,
"RequestCountHttpStatus3xx": 0,
"RequestCountHttpStatus4xx": 0,
"RequestCountHttpStatus5xx": 0,
"RequestCountHttpStatusOthers": 0,
"RequestCountHttpStatus200": 480,
"RequestCountHttpStatus206": 0,
"RequestCountHttpStatus302": 0,
"RequestCountHttpStatus304": 0,
"RequestCountHttpStatus404": 0,
"RequestCountCacheHit": null,
"RequestCountCacheMiss": null,
"RequestCountCacheNoCache": null,
"RequestCountCacheUncacheable": null,
"RequestCountCacheOthers": null,
"EgressTotal": 0.09,
"EgressHttpStatus2xx": null,
"EgressHttpStatus3xx": null,
"EgressHttpStatus4xx": null,
"EgressHttpStatus5xx": null,
"EgressHttpStatusOthers": null,
"EgressCacheHit": null,
"EgressCacheMiss": null,
"EgressCacheNoCache": null,
"EgressCacheUncacheable": null,
"EgressCacheOthers": null
}