https://blogs.technet.microsoft.com/scom_atlas/2015/05/21/task-to-restart-scom-health-service/
Once the management pack is added go to Monitoring-.Windows Computer.
You should see the task in the Tasks pane under Windows Computer Tasks.
Friday, December 9, 2016
Tuesday, December 6, 2016
SCOM DataWare House grooming.
Query to check the size of the tables.
SELECT DB_NAME() AS DbName,
name AS FileName,
size/128.0 AS CurrentSizeMB,
size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0 AS FreeSpaceMB
FROM sys.database_files;
Get size of the database.
SELECT DB_NAME(database_id) AS DatabaseName,
Name AS Logical_Name,
Physical_Name, (size*8)/1024 SizeMB
FROM sys.master_files
GO
Query to check DW data dates.
Select min(datetime)as MinDate, max(datetime)as MaxDate , datediff(d,min(datetime),max(datetime)) AS NoOfDaysInDataSet from Perf.vPerfHourly
My query showed that there was 424 days of data.
MinDate MaxDate NoOfDaysInDataSet
2015-10-09 21:00:00.000 2016-12-06 13:00:00.000 424
Tool for modifying the datawarehouse grooming settings can be downloaded here.
https://blogs.technet.microsoft.com/momteam/2008/05/13/data-warehouse-data-retention-policy-dwdatarp-exe/
Command to run the dwdatarp.exe to get the current sizes of datasets.
C:\temp>dwdatarp.exe -s servername\instancename -d operationsmanagerdw > c:\temp\dwoutput.txt
Dataset name Aggregation name Max Age Current Size, Kb
Alert data set Raw data 400 104,752 ( 0%)
Client Monitoring data set Raw data 30 0 ( 0%)
Client Monitoring data set Daily aggregations 400 96 ( 0%)
Configuration dataset Raw data 400 485,120 ( 1%)
DPM event dataset Raw data 400 0 ( 0%)
Event data set Raw data 100 12,315,568 ( 14%)
Performance data set Raw data 10 4,316,832 ( 5%)
Performance data set Hourly aggregations 400 44,009,336 ( 50%)
Performance data set Daily aggregations 400 2,049,856 ( 2%)
State data set Raw data 180 121,784 ( 0%)
State data set Hourly aggregations 400 22,979,912 ( 26%)
State data set Daily aggregations 400 1,395,216 ( 2%)
Changing the grooming settings. Adjust the time according to my reporting requirements.
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Alert data set" -a "Raw data" -m 180
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Performance data set" -a "Hourly aggregations" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Performance data set" -a "Daily aggregations" -m 365
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Event data set" -a "Raw Data" -m 30
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Raw data" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Hourly aggregations" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Daily aggregations" -m 90
SELECT DB_NAME() AS DbName,
name AS FileName,
size/128.0 AS CurrentSizeMB,
size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0 AS FreeSpaceMB
FROM sys.database_files;
Get size of the database.
SELECT DB_NAME(database_id) AS DatabaseName,
Name AS Logical_Name,
Physical_Name, (size*8)/1024 SizeMB
FROM sys.master_files
GO
Query to check DW data dates.
Select min(datetime)as MinDate, max(datetime)as MaxDate , datediff(d,min(datetime),max(datetime)) AS NoOfDaysInDataSet from Perf.vPerfHourly
My query showed that there was 424 days of data.
MinDate MaxDate NoOfDaysInDataSet
2015-10-09 21:00:00.000 2016-12-06 13:00:00.000 424
Tool for modifying the datawarehouse grooming settings can be downloaded here.
https://blogs.technet.microsoft.com/momteam/2008/05/13/data-warehouse-data-retention-policy-dwdatarp-exe/
Command to run the dwdatarp.exe to get the current sizes of datasets.
C:\temp>dwdatarp.exe -s servername\instancename -d operationsmanagerdw > c:\temp\dwoutput.txt
Dataset name Aggregation name Max Age Current Size, Kb
Alert data set Raw data 400 104,752 ( 0%)
Client Monitoring data set Raw data 30 0 ( 0%)
Client Monitoring data set Daily aggregations 400 96 ( 0%)
Configuration dataset Raw data 400 485,120 ( 1%)
DPM event dataset Raw data 400 0 ( 0%)
Event data set Raw data 100 12,315,568 ( 14%)
Performance data set Raw data 10 4,316,832 ( 5%)
Performance data set Hourly aggregations 400 44,009,336 ( 50%)
Performance data set Daily aggregations 400 2,049,856 ( 2%)
State data set Raw data 180 121,784 ( 0%)
State data set Hourly aggregations 400 22,979,912 ( 26%)
State data set Daily aggregations 400 1,395,216 ( 2%)
Changing the grooming settings. Adjust the time according to my reporting requirements.
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Alert data set" -a "Raw data" -m 180
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Performance data set" -a "Hourly aggregations" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Performance data set" -a "Daily aggregations" -m 365
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "Event data set" -a "Raw Data" -m 30
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Raw data" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Hourly aggregations" -m 90
dwdatarp.exe -s SERVERNAME\INSTANCENAME -d OperationsManagerDW -ds "State data set" -a "Daily aggregations" -m 90
Monday, October 31, 2016
Using SCOM get-scomalert criteria
The scom alerts for a particular computer can be retrieved by the following commands.
Get-SCOMAlert -ResolutionState 0 | ?{$_.PrincipalName -match 'SQL' -OR $_.PrincipalName -match 'WEB'}
Get-SCOMAlert -Criteria {ResolutionState = 0 and PrincipalName like '%SQL%' or PrincipalName like '%WEB%'}}
There is significant difference in the time taken for the two commands to be processed.
PS C:\Windows\system32> Measure-Command{Get-SCOMAlert -ResolutionState 0 | ?{$_.PrincipalName -match 'SQL' -OR $_.PrincipalName -match 'WEB'}}
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 604
Ticks : 6047616
TotalDays : 6.99955555555556E-06
TotalHours : 0.000167989333333333
TotalMinutes : 0.01007936
TotalSeconds : 0.6047616
TotalMilliseconds : 604.7616
PS C:\Windows\system32> Measure-Command{Get-SCOMAlert -Criteria {ResolutionState = 0 and PrincipalName like '%SQL%' or PrincipalName like '%WEB%'}}
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 156
Ticks : 1564777
TotalDays : 1.81108449074074E-06
TotalHours : 4.34660277777778E-05
TotalMinutes : 0.00260796166666667
TotalSeconds : 0.1564777
TotalMilliseconds : 156.4777
The winner is clearly the criteria field. The accepted ones are .
Id
Name
Description
MonitoringObjectId
MonitoringClassId
MonitoringObjectName
MonitoringObjectDisplayName
MonitoringObjectPath
MonitoringObjectFullName
IsMonitorAlert
ProblemId
MonitoringRuleId
ResolutionState
Priority
Severity
Category
Owner
ResolvedBy
TimeRaised
TimeAdded
LastModified
LastModifiedBy
TimeResolved
TimeResolutionStateLastModified
CustomField1
CustomField2
CustomField3
CustomField4
CustomField5
CustomField6
CustomField7
CustomField8
CustomField9
CustomField10
TicketId
Context
ConnectorId
LastModifiedByNonConnector
MonitoringObjectInMaintenanceMode
MonitoringObjectHealthState
ConnectorStatus
NetbiosComputerName
NetbiosDomainName
PrincipalName
AlertParams
SiteName
MaintenanceModeLastModified
StateLastModified
Some more examples using criteria.
Get-ScomAlert -criteria {"Name LIKE 'Failed to connect to computer%' and ResolutionState = 0"}
Get-ScomAlert -criteria {"TimeRaised > '01/03/2017 23:59:00' and ResolutionState != 0"}
$date = $(Get-Date).AddMinutes(-30).ToUniversalTime()
$Alerts = Get-ScomAlert -criteria "ResolutionState = 0 and TimeRaised > '$date'"
Get all new and critical alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=2"};$Alerts
Get all new and warning alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=1"};$Alerts
Get all new and informational alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=0"};$Alerts
Important note: The criteria parameters are case sensitive so make sure you are using the right one.
Get-SCOMAlert -ResolutionState 0 | ?{$_.PrincipalName -match 'SQL' -OR $_.PrincipalName -match 'WEB'}
Get-SCOMAlert -Criteria {ResolutionState = 0 and PrincipalName like '%SQL%' or PrincipalName like '%WEB%'}}
There is significant difference in the time taken for the two commands to be processed.
PS C:\Windows\system32> Measure-Command{Get-SCOMAlert -ResolutionState 0 | ?{$_.PrincipalName -match 'SQL' -OR $_.PrincipalName -match 'WEB'}}
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 604
Ticks : 6047616
TotalDays : 6.99955555555556E-06
TotalHours : 0.000167989333333333
TotalMinutes : 0.01007936
TotalSeconds : 0.6047616
TotalMilliseconds : 604.7616
PS C:\Windows\system32> Measure-Command{Get-SCOMAlert -Criteria {ResolutionState = 0 and PrincipalName like '%SQL%' or PrincipalName like '%WEB%'}}
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 156
Ticks : 1564777
TotalDays : 1.81108449074074E-06
TotalHours : 4.34660277777778E-05
TotalMinutes : 0.00260796166666667
TotalSeconds : 0.1564777
TotalMilliseconds : 156.4777
The winner is clearly the criteria field. The accepted ones are .
Id
Name
Description
MonitoringObjectId
MonitoringClassId
MonitoringObjectName
MonitoringObjectDisplayName
MonitoringObjectPath
MonitoringObjectFullName
IsMonitorAlert
ProblemId
MonitoringRuleId
ResolutionState
Priority
Severity
Category
Owner
ResolvedBy
TimeRaised
TimeAdded
LastModified
LastModifiedBy
TimeResolved
TimeResolutionStateLastModified
CustomField1
CustomField2
CustomField3
CustomField4
CustomField5
CustomField6
CustomField7
CustomField8
CustomField9
CustomField10
TicketId
Context
ConnectorId
LastModifiedByNonConnector
MonitoringObjectInMaintenanceMode
MonitoringObjectHealthState
ConnectorStatus
NetbiosComputerName
NetbiosDomainName
PrincipalName
AlertParams
SiteName
MaintenanceModeLastModified
StateLastModified
Some more examples using criteria.
Get-ScomAlert -criteria {"Name LIKE 'Failed to connect to computer%' and ResolutionState = 0"}
Get-ScomAlert -criteria {"TimeRaised > '01/03/2017 23:59:00' and ResolutionState != 0"}
$date = $(Get-Date).AddMinutes(-30).ToUniversalTime()
$Alerts = Get-ScomAlert -criteria "ResolutionState = 0 and TimeRaised > '$date'"
Get all new and critical alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=2"};$Alerts
Get all new and warning alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=1"};$Alerts
Get all new and informational alerts
$Alerts = Get-SCOMAlert -Criteria {"ResolutionState=0 and Severity=0"};$Alerts
Important note: The criteria parameters are case sensitive so make sure you are using the right one.
Labels:
cmdlets,
criteria,
Get-SCOMAlert,
netbioscomputername,
SCOM 2012,
SCOM alert
Subscribe to:
Posts (Atom)