Попытка включить ведение журнала веб-сервера для нескольких веб-приложений Azure с указанием квоты и срока хранения - PullRequest
0 голосов
/ 22 апреля 2020

Может кто-нибудь помочь мне с моим сценарием powershell ниже? Проблема, с которой я сталкиваюсь, заключается в том, что флаг «ResourceName» - это имя настраиваемого веб-приложения, поэтому мне нужно иметь массив для этого и запустить ForEach-Object l oop для этого массива.

$ResourceGroupName = 'webapptestrg'
$webapps = Get-AzWebApp -ResourceGroupName 'webapptestrg'
$ResourceName = foreach ($webapp in $webapps) {$webapp.name}

$PropertiesObject = @{
    httpLogs = @{
        fileSystem = @{
            enabled = $TRUE;
            retentionInMb = 35;
            retentionInDays = 7;
        }
    }
  }

Get-AzResource -ResourceGroupName $ResourceGroupName | ForEach-Object {
Set-AzResource -Properties $PropertiesObject `
      -ResourceGroupName $ResourceGroupName -ResourceType Microsoft.Web/sites/config `
      -ResourceName $ResourceName.name/logs -ApiVersion 2018-11-01 -Force
      }

1 Ответ

0 голосов
/ 22 апреля 2020

Обновление. У меня была внутренняя помощь, и мы ее выяснили. Для тех, кто нуждается в этом в будущем, вот обновленный код.

$ResourceGroupName = 'rgname'
$webapps = Get-AzWebApp -ResourceGroupName 'rgname'
$ResourceName = foreach ($webapp in $webapps) {$webapp.name}
$PropertiesObject = @{
    httpLogs = @{
        fileSystem = @{
            enabled = $TRUE;
            retentionInMb = 35;
            retentionInDays = 7;
        }
    }
  }
      Foreach ($resource in $ResourceName) {
Set-AzResource -Properties $PropertiesObject `
      -ResourceGroupName $ResourceGroupName -ResourceType Microsoft.Web/sites/config `
      -ResourceName "$resource/logs" -ApiVersion 2018-11-01 -Force
      }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...