Agent Client Collector setting isVirtual to true on physical clients

Andy Lark
Kilo Guru

Hi,

 

Does anyone know why ACC-V 3.0.0 would be setting the isVirtual flag to true. At first I thought it was the BR that runs on the computer table that was seeing something strange, but when I checked the ECC Queue and looked at the payload it clearly shows \"is_virtual\":\"true\".

 

I'm really not sure I want to be going through loads of ruby scripts which are probably being used to perform the basic discovery and I can't see any setting or properties anywhere that might have a default value etc.

 

Hopefully someone has seen this before and knows why and/or how to fix it.

 

Many thanks

Andy

 

#ACC-V

 

5 REPLIES 5

Brian Coleman2
Tera Contributor

Hi @Andy Lark,

Did you ever get a resolution as I am currently seeing the same behaviour?

Thanks

Andy Lark
Kilo Guru

Hi Brian

 

It is a known issue and ServiceNow are checking the wrong registry settings. This was identified in version 3.0 of ACC-V and is still there in version 3.1 - I will post here when I have found the solution.

 

In the meantime if you want to check for yourself, you can use this PowerShell script;

 

function GetMachineType {
    $ComputerSystemInfo = Get-WmiObject -Class Win32_ComputerSystem
    switch ($ComputerSystemInfo.Model) { 

        # Check for VMware Machine Type 
        "VMware Virtual Platform" { 
            Write-Output "This Machine is Virtual on VMware Virtual Platform."
            Break 
        } 

        # Check for Oracle VM Machine Type 
        "VirtualBox" { 
            Write-Output "This Machine is Virtual on Oracle VM Platform."
            Break 
        } 
        default { 

            switch ($ComputerSystemInfo.Manufacturer) {

                # Check for Xen VM Machine Type
                "Xen" {
                    Write-Output "This Machine is Virtual on Xen Platform"
                    Break
                }

                # Check for KVM VM Machine Type
                "QEMU" {
                    Write-Output "This Machine is Virtual on KVM Platform."
                    Break
                }
                # Check for Hyper-V Machine Type 
                "Microsoft Corporation" { 
                    if (get-service WindowsAzureGuestAgent -ErrorAction SilentlyContinue) {
                        Write-Output "This Machine is Virtual on Azure Platform"
                    }
                    else {
                        Write-Output "This Machine is Virtual on Hyper-V Platform"
                    }
                    Break
                }
                # Check for Google Cloud Platform
                "Google" {
                    Write-Output "This Machine is Virtual on Google Cloud."
                    Break
                }

                # Check for AWS Cloud Platform
                default { 
                    if ((((Get-WmiObject -query "select uuid from Win32_ComputerSystemProduct" | Select-Object UUID).UUID).substring(0, 3) ) -match "EC2") {
                        Write-Output "This Machine is Virtual on AWS"
                    }
                    # Otherwise it is a physical Box 
                    else {
                        Write-Output "This Machine is Physical Platform"
                    }
                } 
            }                  
        }
}
}
GetMachineType

 

Please indicate if this helps

 

Andy

tmparks01
Tera Contributor

Has there been any movement on this? We're on 3.5.5 now and still having physical machines marked as virtual. Thanks. 

pratik0306
Tera Guru

is this for Servers or Computers as well?

I just checked in 1 of my instance where ACC is being pushed for 3000 End user machines and i see the flag has both True and False.