Есть ли способ получить сведения о том, какая виртуальная машина подключена к какой рабочей области Log Analytics с помощью Powershell? - PullRequest
0 голосов
/ 06 февраля 2020

Я ищу способ получения списка виртуальных машин с соответствующими рабочими пространствами Log Analytics (если эта виртуальная машина подключена к рабочему пространству Log Analytics) с помощью PowerShell.

В столбце 1 должны быть имена виртуальных машин, в столбце 2 должно быть указано имя рабочей области LA.

Я застрял с ним, и любые предложения будут полезны.

Спасибо.

1 Ответ

1 голос
/ 10 февраля 2020

Вы можете попробовать следующие сценарии:

#get all the Log Analytics Workspace 
$all_workspace = Get-AzOperationalInsightsWorkspace


#here, I hard-code a vm name for testing purpose. If you have more VMs, you can modify the code below using loop.

$myvm_name = "vm name"
$myvm_resourceGroup= "resource group name of the vm"

#for windows vm, the value is fixed as below
$extension_name = "MicrosoftMonitoringAgent"

$myvm = Get-AzVMExtension -ResourceGroupName $myvm_resourceGroup -VMName $myvm_name -Name $extension_name

$workspace_id = ($myvm.PublicSettings | ConvertFrom-Json).workspaceId

#$workspace_id

foreach($w in $all_workspace)
{
if($w.CustomerId.Guid -eq $workspace_id)
  { 
  #here, I just print out the vm name and the connected Log Analytics workspace name
  Write-Output "the vm: $($myvm_name) writes log to Log Analytics workspace named: $($w.name)"
  }
}

Результат теста:

enter image description here

Примечания сценарии:

1.В сценарии для целей тестирования я жестко запрограммировал имя vm / имя группы ресурсов. Если у вас больше виртуальных машин, измените сценарии соответствующим образом. Это легко сделать.

2. Если все виртуальные машины windows vm, тогда продолжайте использовать значение параметра $extension_name = "MicrosoftMonitoringAgent".

3. Я просто распечатываю Имя виртуальной машины и имя подключенной рабочей области аналитики журнала. Вы можете изменить сценарий в соответствии с вашими требованиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...