Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Azure CDN standard от Корпорации Майкрософт (классическая версия) будет прекращена 30 сентября 2027 г. Чтобы избежать нарушений в работе службы, важно перенести профили Azure CDN из профиля "Стандартный" от Майкрософт (классический) на тарифы Azure Front Door Standard или Premium к 30 сентября 2027 г. Дополнительные сведения см. в статье Azure CDN Standard от Майкрософт (классическая версия) — вывод из эксплуатации.
Azure CDN от Edgio была прекращена 15 января 2025 г. Дополнительные сведения см. в разделе часто задаваемых вопросов о прекращении работы Azure CDN от Edgio.
Журналы диагностики Azure позволяют просматривать данные основной аналитики и сохранять их в одно или несколько из следующих целевых расположений:
- Учетная запись хранения Azure
- Рабочая область Log Analytics
- Центры событий Azure
Эта функция доступна в конечных точках сети доставки содержимого для всех ценовых категорий.
Журналы диагностики позволяют экспортировать базовые метрики использования из конечной точки сети доставки содержимого в различные типы источников, чтобы вы могли настраивать их использование. Доступны следующие типы экспорта данных:
- Экспорт данных в хранилище BLOB-объектов, экспорт в CSV-файл и создание графиков в Excel.
- экспорт данных в Центры событий и их сопоставление с данными из других служб Azure;
- Экспортируйте данные в журналы Azure Monitor и просматривайте их в собственной рабочей области Log Analytics.
Для выполнения следующих шагов требуется профиль сети доставки контента Azure. Прежде чем продолжить, обратитесь к документу "Создание профиля и конечной точки сети доставки контента Azure".
Включение ведения журнала с помощью портала Azure
Выполните следующие действия, чтобы активировать ведение журнала для конечной точки сети доставки контента Azure.
Войдите на портал Azure.
На портале Azure перейдите к Все ресурсы>your-cdn-profile.
Выберите конечную точку сети доставки содержимого, для которой необходимо включить журналы диагностика.
Выберите журналы диагностики в разделе "Мониторинг ".
Включение ведения журнала с помощью службы хранилища Azure
Чтобы использовать учетную запись хранения для хранения журналов, выполните следующие действия.
Примечание.
Для выполнения этих действий потребуется учетная запись хранения. Дополнительные сведения см. в статье Создание учетной записи хранения Azure.
В поле Имя параметра диагностики введите имя для параметров журнала диагностики.
Выберите Архивировать в учетной записи хранения, а затем выберите CoreAnalytics.
Для параметра Хранение (в днях) выберите число дней хранения. Хранение на ноль дней означает, что журналы будут храниться неограниченно долго.
Выберите подписку и учетную запись хранения для журналов.
Выберите Сохранить.
Отправить в Log Analytics.
Чтобы использовать Log Analytics для журналов, сделайте следующее:
Примечание.
Для выполнения этих действий требуется рабочая область Log Analytics. Дополнительные сведения см. в статье Создание рабочей области Log Analytics на портале Azure.
В поле Имя параметра диагностики введите имя для параметров журнала диагностики.
Установите флажок Отправить в Log Analytics, а затем — CoreAnalytics.
Выберите подписку и рабочую область Log Analytics для журналов.
Выберите Сохранить.
Передать в концентратор событий.
Чтобы использовать концентратор событий для журналов, сделайте следующее:
Примечание.
Для выполнения этих действий потребуется концентратор событий. Дополнительные сведения см. в статье Краткое руководство. Создание концентратора событий с помощью портала Azure.
В поле Имя параметра диагностики введите имя для параметров журнала диагностики.
Выберите Передать в концентратор событий, затем выберите CoreAnalytics.
Выберите подписку и пространство имен Event Hubs для журналов.
Выберите Сохранить.
Включение ведения журнала с помощью PowerShell
Следующий пример показывает, как включить журналы диагностики с помощью командлетов Azure PowerShell.
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Чтобы узнать, как перейти на модуль Az PowerShell, см. статью Перенос Azure PowerShell с AzureRM на Az.
Включение журналов диагностики в учетной записи хранения
Войдите в Azure PowerShell.
Connect-AzAccountЧтобы включить журналы диагностики в учетной записи хранения, введите следующие команды, заменив переменные собственными значениями:
$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
Включение журналов диагностики для рабочей области Log Analytics
Войдите в Azure PowerShell.
Connect-AzAccountЧтобы включить журналы диагностики для рабочей области Log Analytics, введите следующие команды, заменив переменные собственными значениями:
$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
Включите журналы диагностики для пространства имен концентратора событий
Войдите в Azure PowerShell.
Connect-AzAccountЧтобы включить журналы диагностики для рабочей области Log Analytics, введите следующие команды, заменив переменные собственными значениями:
$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
Использование журналов диагностики из хранилища Azure
В этом разделе описывается схема аналитики сетевых ядер доставки содержимого, организация в учетной записи служба хранилища Azure и пример кода для скачивания журналов в CSV-файле.
Использование обозревателя хранилищ Microsoft Azure
Вы можете скачать это средство на странице обозревателя хранилищ Azure. После скачивания и установки программного обеспечения настройте его для использования той же учетной записи хранилища Azure, которая была настроена в качестве места назначения для журналов диагностики сети доставки содержимого.
- Откройте обозреватель хранилищ Microsoft Azure.
- Найдите учетную запись хранения.
- Разверните узел Контейнеры больших двоичных объектов в учетной записи хранения.
- Выберите контейнер с именем insights-logs-coreanalytics.
- Результаты отобразятся на панели справа, начиная с первого уровня, который обозначен как resourceId=. Продолжайте выбирать уровни, пока не найдете файл PT1H.json. См. описание пути в разделе Формат пути Blob.
- Каждый файл блоба PT1H.json представляет журналы аналитики в течение одного часа для определенного сетевого интерфейса или пользовательского домена.
- Схема содержимого этого JSON-файла описана в разделе "Схемы журналов основной аналитики".
Формат пути BLOB-объекта
Журналы основной аналитики создаются каждый час, данные собираются и хранятся в одном BLOB-объекте Azure в виде JSON-нагрузки. Обозреватель хранилища интерпретирует "/" как разделитель каталогов и отображает иерархию. Путь к BLOB-объекту Azure отображается как иерархическая структура и указывает на имя этого BLOB-объекта. Имя BLOB-объекта следует следующему соглашению об именовании.
resourceId=/SUBSCRIPTIONS/{Subscription Id}/RESOURCEGROUPS/{Resource Group Name}/PROVIDERS/MICROSOFT.CDN/PROFILES/{Profile Name}/ENDPOINTS/{Endpoint Name}/ y=/m=/d=/h=/m=/PT1H.json
Описание полей
| значение | Описание |
|---|---|
| Идентификатор подписки | Идентификатор подписки Azure в глобальном уникальном формате идентификатора (GUID). |
| Имя группы ресурсов | Имя группы ресурсов, к которой принадлежат сетевые ресурсы доставки содержимого. |
| Имя профиля | Имя профиля сети доставки содержимого |
| Имя конечной точки | Имя конечной точки сети доставки содержимого |
| Год | 4-значное обозначение года, например 2017 |
| месяц | 2-значное обозначение номера месяца 01 = январь... 12 = декабрь. |
| день | 2-значное обозначение дня месяца |
| PT1H.json | Фактический JSON-файл, в котором хранятся данные аналитики. |
Экспорт данных основной аналитики в CSV-файл
Для доступа к основной аналитике предлагаем пример кода для средства. Это средство позволяет загружать JSON-файлы в плоский формат файлов с разделителями-запятыми, который можно использовать для создания диаграмм или других агрегатов.
Вот как использовать это средство:
- Перейдите на сайт GitHub по ссылке https://github.com/Azure-Samples/azure-cdn-samples/tree/master/CoreAnalytics-ExportToCsv.
- Скачайте код.
- Следуйте инструкциям по компиляции и настройке.
- Запустите средство.
- Полученный CSV-файл позволяет просмотреть данные аналитики в простой одноуровневой структуре.
Задержка данных журнала
Данные журнала Майкрософт задерживаются до 1 часа. Эта задержка обусловлена временем обработки и хранения данных.
Типы журналов диагностики для аналитики сетевых ядер доставки содержимого
В настоящее время корпорация Майкрософт предлагает только основные журналы аналитики, которые содержат метрики, показывающие статистику ответа HTTP и статистику выгрузки, как это видно по точкам присутствия и границам сети доставки содержимого.
Сведения о метриках основной аналитики
В таблице ниже приведен список метрик, доступных в журналах основной аналитики.
Не все метрики доступны у всех поставщиков, хотя различия минимальны. В этой таблице также есть сведения о доступности метрик у определенных поставщиков. Метрики доступны только для конечных точек сети доставки содержимого, имеющих трафик на них.
| Метрика | Описание |
|---|---|
| Общее количество запросов | Общее количество запросов за этот период. |
| Количество запросов со статусом HTTP 2xx | Количество запросов, на которые возвращены ответы с кодами HTTP 2xx (200, 202 и т. д.). |
| СчетчикЗапросовHttpStatus3xx | Количество запросов, на которые возвращены ответы с кодами HTTP 3xx (300, 302 и т. д.). |
| КоличествоЗапросовHttpStatus4xx | Количество запросов, на которые возвращены ответы с кодами HTTP 4xx (400, 404 и т. д.). |
| КоличествоЗапросовHttpStatus5xx | Количество запросов, на которые возвращены ответы с кодами HTTP 5xx (500, 504 и т. д.). |
| КоличествоЗапросовПоДругимHttpСтатусам | Количество всех остальных кодов HTTP (кроме 2xx–5xx). |
| КоличествоЗапросовHttpСтатус200 | Количество всех запросов, на которые возвращался ответ с кодом HTTP 200. |
| КоличествоЗапросовСтатусHTTP206 | Количество всех запросов, на которые возвращался ответ с кодом HTTP 206. |
| КоличествоЗапросовHttpStatus302 | Количество всех запросов, на которые возвращался ответ с кодом HTTP 302. |
| КоличествоЗапросовHttpStatus304 | Количество всех запросов, на которые возвращался ответ с кодом HTTP 304. |
| КоличествоЗапросовHttpСтатус404 | Количество всех запросов, на которые возвращался ответ с кодом HTTP 404. |
| Количество_запросов_доступов_кэша | Количество всех запросов, в результате которых произошло попадание в кэш. Актив был передан клиенту непосредственно из узла присутствия. |
| Количество_запросов_промахов_кэша | Количество всех запросов, в результате которых произошел кэш-промах. Пропуск Cache означает, что ресурс не был найден в точке присутствия (POP), ближайшей к клиенту, и был получен из исходного источника. |
| КэшированиеЗапросовБезКэша | Количество всех запросов к ресурсу, кэширование которых запрещено из-за конфигурации пользователя на периферии сети. |
| ЗапросКоличествоКэшНекэшируемый | Количество всех запросов к ресурсам, которые предотвращаются от кэширования заголовками Cache-Control и Expires. Это количество означает, что данный ресурс не должен кэшироваться на точке присутствия или в HTTP-клиенте. |
| ЭгрессТотал | Объем передачи исходящих данных в ГБ. |
| EgressHttpStatus2xx | Объем передачи исходящих данных* для ответов с кодами состояния HTTP 2xx (ГБ). |
| EgressHttpStatus3xx | Объем передачи исходящих данных для ответов с кодами состояния HTTP 3xx (ГБ). |
| EgressHttpStatus4xx | Объем передачи исходящих данных для ответов с кодами состояния HTTP 4xx (ГБ). |
| EgressHttpStatus5xx (Исходящий HTTP статус 5xx) | Объем передачи исходящих данных для ответов с кодами состояния HTTP 5xx (ГБ). |
| Другие состояния HTTP Egress | Объем передачи исходящих данных для ответов с другими кодами состояния HTTP (ГБ). |
| EgressCacheHit | Передача исходящих данных для ответов, которые были доставлены непосредственно из кэша сети доставки содержимого в сети доставки содержимого в сети POPs/Edge. |
| EgressCacheMiss | Объем передачи исходящих данных для ответов, не найденных на ближайшем POP-сервере и полученных с сервера-источника. |
| EgressCacheNoCache | Передача данных для ресурсов, кэширование которых запрещено из-за конфигурации пользователя на краю сети. |
| Кэш выхода не кэшируется | Передача исходящих данных для ресурсов, которые не могут быть кэшированы из-за заголовков Cache-Control или Expires ресурса. Указывает, что ресурс не должен кэшироваться на POP или HTTP-клиентом. |
*Передача исходящих данных относится к трафику, доставленном из сетевых POP-серверов доставки содержимого клиенту.
Схема журналов основной аналитики
Все журналы хранятся в формате JSON, и каждая запись содержит строковые поля, как показано на схеме ниже.
"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,
}
}
]
}
Здесь time представляет начальное время часового рубежа, для которого сообщаются статистические данные. Метрика, неподдерживаемая поставщиком сети доставки содержимого, вместо двойного или целочисленного значения, приводит к значению NULL. Это значение указывает на отсутствие метрики, то есть по смыслу отличается от значения 0. Каждому домену, настроенному на конечной точке, соответствует один набор этих метрик.
Пример набора свойств:
{
"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
}