Как настроить журнал приложения в веб-приложении Azure с помощью диспетчера ресурсов Azure

Кто-нибудь знает, как установить указанные ниже параметры диагностики в веб-приложении Azure с помощью диспетчера ресурсов Azure (Powershell или JSON).

введите здесь описание изображения

Используя .json, я могу найти только эти настройки

     "requestTracingEnabled": true, /* Failed request tracing, aka 'freb' */
     "httpLoggingEnabled": true, /* IIS logs (aka Web server logging) */
     "logsDirectorySizeLimit": 40, /* 40 MB limit for IIS logs */
     "detailedErrorLoggingEnabled": true, /* Detailed error messages  */

Что включает ведение журнала веб-сервера в файловую систему, но НЕ ведение журнала приложений или хранилище BLOB-объектов.

В Powershell эта команда работает только с ASM, поскольку не находит данные ей неклассические учетные записи хранения.

   Enable-AzureWebsiteApplicationDiagnostic

Любая помощь будет оценена по достоинству. В настоящее время мы используем Azure Powershell 0.9.8.

С Уважением


person Ashley Kelham    schedule 15.01.2016    source источник


Ответы (3)


Если вы просматриваете существующее веб-приложение в Resource Explorer, вы найдете config/logs раздел, который выглядит примерно так:

{
  "id": "/subscriptions/.../config/logs",
  "name": "logs",
  "type": "Microsoft.Web/sites/config",
  "location": "North Central US",
  "properties": {
    "applicationLogs": {
      "fileSystem": {
        "level": "Off"
      },
      "azureBlobStorage": {
        "level": "Information",
        "sasUrl": "...",
        "retentionInDays": 14
      }
    },
    ...
}

Я считаю, что вы можете использовать этот формат в своем шаблоне json для настройки ведения журнала. (Этот раздел будет являться родственником раздела config/web, который содержит настройки, упомянутые в вопросе.)

Однако обратите внимание, что раздел config/logs не описан в System.Web schema, поэтому я полагаю, что в настоящее время MS не поддерживает. Я почти уверен, что пробовал и видел, как это работает.

person BenV    schedule 15.01.2016
comment
Отлично - почему-то я никогда не видел обозревателя ресурсов - никогда не придется снова задавать такой вопрос с этим. - person Ashley Kelham; 22.01.2016
comment
Может ли кто-нибудь помочь мне с получить sasUrl в файле шаблона RM (json), пожалуйста? - person Moim; 25.01.2016
comment
Свойства sasUrl и retentionInDays фактически сопоставлены с ключами AppSetting DIAGNOSTICS_AZUREBLOBCONTAINERSASURL и DIAGNOSTICS_AZUREBLOBRETENTIONINDAYS. Таким образом, вы можете установить их как обычные SiteConfig.AppSettings свойства. - person Michaël Hompus; 29.05.2017
comment
@ MichaëlHompus Просто предостережение. Я подумал, это означает, что я мог бы прокомментировать их, если бы они были применены позже в качестве настроек приложения, но вы не можете, развертывание жалуется, если sasUrl не установлен / отсутствует. - person Simon; 27.07.2017

Раздел Azure Resource Manager (ARM) template json для настройки журнала приложений (Blob) и ведения журнала веб-сервера (хранилище) на основе приведенного выше снимка экрана выглядит следующим образом:

{
  "apiVersion": "2015-08-01",
  "name": "logs",
  "type": "config",
  "dependsOn": [
    "[resourceId('Microsoft.Web/Sites', parameters('siteName'))]"
  ],
  "properties": {
    "applicationLogs": {
      "azureBlobStorage": {
        "level": "Information",
        "sasUrl": "<Your Azure Blob Storage Account SAS Url>",
        "retentionInDays": null
      }
    },
    "httpLogs": {
      "azureBlobStorage": {
        "sasUrl": "<Your Azure Blob Storage Account SAS Url>",
        "retentionInDays": null,
        "enabled": true
      }
    },
    "failedRequestsTracing": {
      "enabled": true
    },
    "detailedErrorMessages": {
      "enabled": true
    }
  }
}

Справочные материалы:

Надеюсь, это ответит на ваш вопрос и поможет решить вашу проблему.

Пожалуйста, дайте мне знать, если вам понадобится дополнительная помощь или разъяснения.

person juvchan    schedule 19.01.2016

Я не нашел, как это установить в шаблоне при первом положении. Но после выделения ресурсов это оказалось несложно. См. Ответ на странице https://stackoverflow.com/a/51617949/511144, чтобы узнать, как это сделать, используя скрипт Set-AzureRmResource

person Artyom    schedule 31.07.2018