Я занимаюсь инвентаризацией, пытаясь собрать все мои расписания запуска / остановки виртуальной машины из Azure.Я борюсь с извлечением дней, выбранных для еженедельных графиков повторения.Я могу извлечь все данные из одного расписания с помощью:
Select-AzureRmSubscription <name>
$schedule = Get-AzureRmAutomationSchedule -AutomationAccountName <name)-ResourceGroupName <name> -Name <name>
И затем получить все дни:
$schedule.WeeklyScheduleOptions.DaysOfWeek -join ","
Какие выходные данные: понедельник, вторник, среда, четверг, пятница
Но если я переберу все свои подписки и соберу psobject со всеми данными расписания, эти данные будут пустыми:
$AzSubs = Get-AzureRmSubscription
$objs = @()
foreach ($AzSub in $AzSubs){
Get-AzureRmSubscription -SubscriptionName $AzSub.Name | Select-AzureRmSubscription
$azAutAccs = Get-AzureRmAutomationAccount
foreach ($azAutAcc in $azAutAccs){
$AzAutScheds = Get-AzureRmAutomationSchedule -AutomationAccountName $azAutAcc.AutomationAccountName -ResourceGroupName $azAutAcc.ResourceGroupName
$AzAutScheds = $AzAutScheds | where{$_.IsEnabled -eq "True"}
foreach ($AzAutSched in $AzAutScheds){
$DOW = $azAutSched.WeeklyScheduleOptions.DaysOfWeek -join "," | out-string
$DOM = $azAutSched.MonthlyScheduleOptions.DaysOfMonth -join "," | out-string
$obj = new-object psobject -Property @{
SchedName = $AzAutSched.Name
LastModifiedTime = (get-date ([DateTime]::Parse($AzAutSched.LastModifiedTime)) -Format "dd-MM-yyyy HH:mm (zzz)")
IsEnabled = $AzAutSched.IsEnabled
AutomationAccount = $azAutAcc.AutomationAccountName
ResourceGroup = $azAutAcc.ResourceGroupName
NextRun = ([DateTime]::Parse($azAutSched.NextRun))
StartTime = (get-date ([DateTime]::Parse($azAutSched.StartTime)) -Format "HH:mm (zzz)")
TimeZone = $azAutSched.TimeZone
Interval = $azAutSched.Interval
Frequency = $azAutSched.Frequency
WeekSchedule = $DOW
MonthSchedule = $DOM
}
$objs += $obj
}
}
}
$objs | sort SchedName | ft -Property SchedName,LastModifiedTime,StartTime,TimeZone,Interval,Frequency,WeekSchedule,MonthSchedule
Тогда моя таблица заканчивается пустыми столбцами для WeekSchedule / MonthSchedule.
Я пробовал разные комбинации, исключая параметр out-string, исключая объединение, устанавливая свойство непосредственно в строке свойства, и, как указано, строил переменную над объектом и ссылался на нее в строке свойства.Никто из них не работает.
Кто-нибудь может пролить свет на то, что мне не хватает?Или другие советы о том, как этого добиться, приветствуются.
Модуль AzureRM обновлен.