VMware Cloud Community
mphilippi
Contributor
Contributor

Report with Trend Views on multiple VMs

Hello,

i'm struggling with following problem:

I want to create a report with a few trend views (like CPU Usage of the last 24 Hours) on an group of VMs.

There are a configurated views with all the parameters i need and i put them in a custom report.

But i can run that report only on a VM Object and not on a folder or ressource pool.

is there a possibility to create a report with the trend cpu views of more than one vm? Can i create a group of VMs an run the report against that group?

Thanks in advance

Moritz

Reply
0 Kudos
10 Replies
dtaliafe
Hot Shot
Hot Shot

Are you running vROps 6.3 or higher?  If so you should be able to select a group of VMs.  Prior to 6.3 the trend view could only display a single resource.

Reply
0 Kudos
mphilippi
Contributor
Contributor

Hi,

yes i'm running on 6.6.05707161.

Can you tell me how to select a group of vms?

Thx

Reply
0 Kudos
dtaliafe
Hot Shot
Hot Shot

It should allow you to select a folder or resource pool when you run the report.  Do all of the views in your report have the subject set to Virtual Machine?  Are they all trend views or is there another type of view that might not display multiple VMs?  It might be that one of them is preventing you from selecting a group of VMs.  Try starting with one view and testing it, then add one at a time to the report.

Reply
0 Kudos
mphilippi
Contributor
Contributor

Hi,

i have only one view in the test report (Screenshot 1). But in the window where i can select an object i can't choose more than one VM (Screenshot 2)

And if i select a ressource pool or vm folder i get the message “The selected Object is not applicable”

Do i have to define the group of VMs, before i can select them in the report?

Thx

Reply
0 Kudos
dtaliafe
Hot Shot
Hot Shot

Try creating a group for the VMs.  You can't select multiple VMs from a list like in the second screenshot, but you should be able to select a parent object that contains VMs, like a custom group, resource pool, or cluster.  If a group doesn't work can you export the report and attach it?

Reply
0 Kudos
aaghabekyan
VMware Employee
VMware Employee

Hi Guys,

mphilippi, you can run a report with trend view on VM Folder object, in that case, you will see all VMs included in that folder. I guess you got the message "The selected Object is not applicable" because the VM folder you have selected did not contain any VM, and I believe if you try to run the same report on a VM folder which has any VM in it, it should work.

Or you can create a custom group put VMs there and run the report against the custom group.

I have tried on my vROps 6.6 and it works as expected, so I have attached the report, you can just import it into your system and run it on VM folder which contains VMs.

Reply
0 Kudos
daphnissov
Immortal
Immortal

One thing to call out which OP may be looking for is a report showing individual trend lines for each VM. Unfortunately, this is still a feature gap within vROps. Only recently (6.5, I think) was it possible to generate the report (as shown) that contains stacked trend lines. But it's still not possible to have them generate individual trend lines in separate graphs. If that's what you're looking to do, it just isn't possible right now.

slanger
Enthusiast
Enthusiast

I'm astonished that this is STILL not possible with vROps.  Reporting-wise vROps is failing... because reporting is so poor, we more often than not just end up sending screen shots. Smiley Sad

Reply
0 Kudos
wilber8222
Enthusiast
Enthusiast

You are correct. If you have 100+ VMs need to reporting everyday. It will be nightmare. 🙂

Reply
0 Kudos
Jayaraghavendra
Contributor
Contributor

Hi

User Powercli to achive the same

Running the report on each VM with the help of script

$vrops = Connect-OMServer -Server vrops.example.com -User "admin" -Password "Password" -AuthSource "Local Users"

$vrops.ExtensionData.GetReportDefinitions($null, $null, "1-Year-VM-Performance-Report").ReportDefinition | select ID

Get-OMResource -Name "vmname" | Select-Object Id

$vrops.ExtensionData.GetTraversalSpecs().TraversalSpec

$vrops.ExtensionData.GetTraversalSpecs($null, $null, "vSphere Hosts and Clusters").TraversalSpec

$TraversalSpec = New-Object VMware.VimAutomation.VROps.Views.TraversalSpec

$TraversalSpec.Name = "vSphere Hosts and Clusters"

$TraversalSpec.RootAdapterKindKey = "VMWARE"

$TraversalSpec.RootResourceKindKey = "vSphere World"

$TraversalSpec.RootResourceKindKey = "Virtual Machine"

$Report = New-Object VMware.VimAutomation.VROps.Views.Report

$Report.ResourceId = "ecfc17d1-b12e-4c0d-8b1b-47b9dad73123" (Output of Get-OMResource -Name "vmname" | Select-Object Id)

$Report.ReportDefinitionId = "3b67eb4e-ff0b-4cb1-bf4f-ed0591aeeda6" (The output of $vrops.ExtensionData.GetReportDefinitions($null, $null, "ReportName").ReportDefinition | select ID)

$Report.TraversalSpec = $TraversalSpec

Powercli Version 10.x

Sample script

import-csv .\ResourceNames.csv | %{

$RID = Get-OMResource $_.VMName

$RIDValue = $RID.ID

#$vrops.ExtensionData.GetTraversalSpecs().TraversalSpec

#$vrops.ExtensionData.GetTraversalSpecs($null, $null, "vSphere Hosts and Clusters").TraversalSpec

$TraversalSpec = New-Object VMware.VimAutomation.VROps.Views.TraversalSpec

$TraversalSpec.Name = "vSphere Hosts and Clusters"

$TraversalSpec.RootAdapterKindKey = "VMWARE"

$TraversalSpec.RootResourceKindKey = "vSphere World"

$Report = New-Object VMware.VimAutomation.VROps.Views.Report

$Report.ResourceId = $RIDvalue

$Report.ResourceId

$Report.ReportDefinitionId = "3b67eb4e-ff0b-4cb1-bf4f-ed0591aeeda6"

$Report.TraversalSpec = $TraversalSpec

$vrops.ExtensionData.CreateReport($Report)

Write-Host "Report Generation initiated for  $_.VMName.Name"

}

Reply
0 Kudos