setAzVMextension для подключения ВМ к журналу аналитики - PullRequest
0 голосов
/ 24 апреля 2019

С помощью следующего кода я хочу подключить свои виртуальные машины к моей рабочей области аналитики журналов.

$ResourceGroup = "stackoverflow"
$WorkspaceName = "dontberudepls"


$AllVMs = Get-AzVM -ResourceGroupName $ResourceGroup

for ($i=0; $i -lt $AllVMs.length; $i++){

$vWorkspace = Get-AzResource -Name $WorkspaceName
If (-not $WorkspaceName) {Write-Host -ForegroundColor Yellow "Workspace " $WorkspaceName " wasn’t found in the current subscription."; return}
$vWorkSpace = Get-AzOperationalInsightsWorkspace -Name $vWorkspace.Name -ResourceGroupName $vWorkspace.ResourceGroupName
$vWorkspaceID = $vWorkspace.CustomerID
$vworkspaceKey = (Get-AzOperationalInsightsWorkspaceSharedKeys -ResourceGroupName $vworkspace.ResourceGroupName -Name $vworkspace.Name).PrimarySharedKey
Set-AzVMExtension -ResourceGroupName $AllVMs[$i].ResourceGroupName -VMName $AllVMs[$i].Name -Name ‘MicrosoftMonitoringAgent’ -Publisher ‘Microsoft.EnterpriseCloud.Monitoring’ -ExtensionType ‘MicrosoftMonitoringAgent’ -TypeHandlerVersion ‘1.0’ -Location $AllVMs[$i].Location -SettingString "{‘workspaceId’: ‘$vWorkspaceID’}" -ProtectedSettingString "{‘workspaceKey’: ‘$vworkspaceKey’}"

}

И я получил следующий код ошибки при попытке развернуть этот код:

Set-AzVMExtension : Invalid property identifier character: ‘. Path '', line 1, position 1.

Я пишу сценарий, который создает рабочее пространство для анализа журналов и добавляет все журналы с виртуальных машин из определенной группы ресурсов в мое рабочее пространство.

Я следовал в основном этому учебнику. Мой скрипт добавляет больше ресурсов, чем просто эта функция, поэтому я хотел сделать это в Powershell. Но я не могу заметить, откуда возникла ошибка. Я не использую identifier character: ‘. Path '' Путь в любом месте?

Я пришел к этому вопросу SO , имеющему такую ​​же функциональность. но просто подключает все к аналитике логов, что не совсем то, что мне нужно. Я надеюсь, что кто-то может мне помочь, что я делаю неправильно или пропускаю или плохо вижу?

1 Ответ

1 голос
/ 24 апреля 2019

Когда вы копировали кусочки кода, он использовал неправильные кавычки.

‘MicrosoftMonitoringAgent’ должно быть 'MicrosoftMonitoringAgent'

То же самое для остальных, иначе они не будут рассматриваться как строки.

...