FAQ: How do I get a simple list of specific computers based on simple criteria?

<!--[if lt IE 9]>


Comments (10)

  1. Kevin Holman says:

    @John –

    You can query the SCOM data, in the BaseManagedentity table – this will show the time/date an object is created:

    select * from BaseManagedEntity
    where FullName like ‘Microsoft.SystemCenter.HealthService:%’
    order by TimeAdded

    You can also personalize the Agent managed view – and add the "Installed" column, but this is the last time an agent was installed/reinstalled, not necessarily the same date.

  2. John Bradshaw says:

    Thx Kevin! Always helpful information here.

    BTW, will you be blogging about Reporting and some of the best and most useful reports you have been asked for/seen?

  3. Byty says:

    Try copy past if you have let’s say 1000 objects… You will be surprised 🙂 if not objects are loaded in the view you will get blank spaces. In general only the first 100 rows are laoded initialy.

  4. Floyd says:

    Hey Kevin, Quick question how can I create a report or some query to identify physical vs virtual servers in SCOM ?

  5. Scott Moss says:

    Dirty PowerShell? LOL!!

  6. rob1974 says:

    Now only the Windows 2008 servers without the R2 version. Ok, trick question but thanks to another post of you solved:


  7. John says:

    Hi Kevin,

    Is there a way in SCOM 2012 R2 to find out exact date/time for Windows Servers when they were added to SCOM monitoring?

  8. Al says:

    Hi Kevin,
    This is a great blog and invaluable help.

    I have been given a task to create SQL Server Production inventory for reporting to Microsoft. Although I was able to do it manually I would like to have it done through the command prompt and I’m new to SCOM and poweshell. I have tried exhaustively since last
    2 days to come up with a query but only half of it is working.

    Here’s my powershell query

    Get-SCOMClass –Name Microsoft.Windows.Computer | Get-SCOMClassInstance | Select @{Label="Computer";Expression= {$_.'[Microsoft.Windows.Computer].NetbiosComputerName’}},
    @{Label="Instance";Expression= {$_.'[Microsoft.SQLServer.DBEngine].InstanceName’}}, @{Label="ConnectionString";Expression= {$_.'[Microsoft.SQLServer.DBEngine].ConnectionString’}}, @{Label="Version";Expression= {$_.'[Microsoft.SQLServer.DBEngine].Version’}},
    @{Label="Edition";Expression= {$_.'[Microsoft.SQLServer.DBEngine].Edition’}}, @{Label="DomainName";Expression= {$_.'[Microsoft.Windows.Computer].NetbiosDomainName’}}, @{Label="VirtualMachine?";Expression= {$_.'[Microsoft.Windows.Computer].IsVirtualMachine’}},
    @{Label="AD Site";Expression= {$_.'[Microsoft.Windows.Computer].ActiveDirectorySite’}},@{Label="LogicalProcessors";Expression= {$_.'[Microsoft.Windows.Computer].LogicalProcessors’}}, @{Label="PhysicalProcessor";Expression= {$_.'[Microsoft.Windows.Computer].PhysicalProcessors’}}
    | export-csv D:tempSqlInventroy.csv

    The result is not returning or returning empty for columns: Instance, ConnectionString, Version and Edition.

    Computer Instance ConnectionString Version Edition DomainName VirtualMachine ADSite LogicalProcessors PhysicalProcessors

    If you can tell me where I’m wrong so will be appreciated.



Skip to main content