$capabilities = @( "CPU capacity forecasting", "Networking capacity forecasting", "Total storage consumption forecasting", "Volume consumption forecasting" ) foreach ($capability in $capabilities){ $Output = Get-Content (Get-InsightsCapabilityResult -Name $capability).Output -Encoding UTF8 | ConvertFrom-Json $Output.ForecastingResults | ForEach-Object { $values = $_.ObservationSeries | ForEach-Object { $_.Values[0] } $stats = $values | Measure-Object -Average -Maximum -Minimum [PSCustomObject]@{ Resource = $_.IdentifierFriendlyName + ": 実績" Average = [math]::Round($stats.Average, 2) Maximum = [math]::Round($stats.Maximum, 2) Minimum = [math]::Round($stats.Minimum, 2) } } Write-Output "" $Output.ForecastingResults | ForEach-Object { $values = $_.Prediction | ForEach-Object { $_.Values[0] } $stats = $values | Measure-Object -Average -Maximum -Minimum [PSCustomObject]@{ Resource = $_.IdentifierFriendlyName + ": 予測" Average = [math]::Round($stats.Average, 2) Maximum = [math]::Round($stats.Maximum, 2) Minimum = [math]::Round($stats.Minimum, 2) } } $Output.ForecastingResults | ForEach-Object { $_.IdentifierFriendlyName + ": 予測詳細" $predictionData = $_.Prediction | Where-Object { $_.Values.Count -gt 0 -and $null -ne $_.Values[0] } if (-not $predictionData){ return } foreach ($item in $predictionData){ $date = [datetime]$item.DateTime $value = [double]$item.Values[0] "{0} {1,10:N2}" -f $date.ToString("yyyy/MM/dd"),$value } } }