VMware Cloud Community
OsburnM
Hot Shot
Hot Shot

Identifying OS Type Mismatch - Need a Supermetric?

A little long-winded history (I opened an SR - awaiting feedback) -

So turns out, vROps actually has two different properties (much like RVTools does) to show the VM's Guest OS Type configuration setting and a different one to show the Guest OS as seen by the VMware tools.  Unfortunately, the Dashboards, Views, Summary Display, & Reports do not tell you which property they are using in their generic labels.  So depending on what and where you're looking in vROps, you could potentially be looking at the wrong thing if you have improperly configured VMs.

For instance, say you build a VM as 2008R2 back in the day, and you did an inplace upgrade to 2012 but forgot to change the Guest OS Type in vCenter to 2012.

Looking at that VM In vROps, "VM > Details > Property|Configuration|Guest Fullname" will show 'Microsoft Windows Server 2008 R2 (64-bit)'.

However, also looking at that VM in vROps, under "VM > Details > Property|Summary|Guest Operating System|Guest OS Full Name" will show 'Microsoft Windows Server 2012 (64-bit)'.

If you look at the VM's Summary page / About Me section, it shows the 'Summary|Guest Operating System|Guest OS Full Name' value.

If you look at that same VM in the default dashboards or canned VM Inventory Summary view, it shows the 'Configuration|Guest Fullname' value.  But, you don't know that because a custom label (by VMware-- not me/end-user) was applied to the View to just show "Guest OS" so you don't know what you're looking at unless you edited the view to get the specific property.

It's a major PITA and misleading!

Obviously we need to correct all these so the mismatch doesn't exist in the firstplace; and, I can create a view that shows both properties and then export to xls and filter on ones that aren't equal-- but that's all even more PITA.

I'd like to create a supermetric (call is OSMismatch) that says something like, "if "Configuration|Guest Fullname" != then set OSMismatch = '1'"  or something along those lines.

Does anyone know if you can actually DO something like this in a supermetric?  ie, compare two properties and set a new boolean value based on the compare results?

Reply
0 Kudos
3 Replies
filosmith
Enthusiast
Enthusiast

This doesn't seem to work, but maybe you or someone can fix it. It's my first supermetric, and it took awhile to even get rid of the syntax errors. It shows 0 on a vm that I know those two metrics don't match Smiley Sad

count(${adaptertype=VMWARE, objecttype=VirtualMachine, metric=summary|guest|fullName, depth=1, where="!equals config|guestFullName"})

Also tried:

count(${adaptertype=VMWARE, objecttype=VirtualMachine, metric=summary|guest|fullName, depth=1, where="summary|guest|fullName !equals config|guestFullName"})

Reply
0 Kudos
Andyve_
Enthusiast
Enthusiast

Im also looking for an answer on this.

I want to list all the VMs where this doesn't match.

{Virtual Machine: Configuration|Guest Fullname, depth=1}!=​{Virtual Machine: Summary|Guest Operating System|Guest OS Full Name, depth=1}

Reply
0 Kudos
sxnxr
Commander
Commander

I dont be leave you can do this with a supermetric. The where clause only allows for a string value like

count(${adaptertype=VMWARE, objecttype=VirtualMachine, attribute=summary|guest|fullName, depth=2, where ="summary|guest|fullName startsWith Microsoft Windows"})

from the vmware doc you get

String Operators

Description

equals

Returns true if metric/property string value is equal to specified string.

contains

Returns true if metric/property string value contains specified string.

startsWith

Returns true if metric/property string value starts with the specified prefix.

endsWith

Returns true if metric/property string value ends with the specified suffix.

!equals

Returns true if metric/property string value is not equal to specified string.

!contains

Returns true if metric/property string value does not contain specified string.

!startsWith

Returns true if metric/property string value does not start with the specified prefix.

!endsWith

Returns true if metric/property string value does not end with the specified suffix.

there is now way to use a metric in the where clause.

I cant think of a way to do this without using excel

Reply
0 Kudos