Task to restart health service on agents

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.

 

 

Advertisements
Posted in System Center Operations Manager | Leave a comment

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.

https://blogs.technet.microsoft.com/momteam/2008/05/13/data-warehouse-data-retention-policy-dwdatarp-exe/

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.

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

 

Posted in SCOM 2012, System Center Operations Manager | Tagged , , , , , , | Leave a comment

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.

$Alerts = get-ScomAlert -criteria {“Name LIKE ‘Failed to connect to computer%’ and ResolutionState = 0”}

$Alerts = Get-ScomAlert -criteria {“TimeRaised > ’01/03/2017 23:59:00′ and ResolutionState != 0”}

Important note: The criteria parameters are case sensitive  so make sure you are using the right one.

 

 

 

 

 

Posted in SCOM 2012 | Tagged , , , , | Leave a comment

Increase number of objects seen in SCSM SharePoint portal query result prompt

Connect to your SharePoint portal server and open inetmgr.

Navigate to Sites – SCSMWebContentServer – ServiceHost

Double click Application Settings. From Actions select add and add the following value.

Name: MaximuminstanceCount

Value: 5000

Inetmgr

Posted in Service Manager | Leave a comment

When was your server rebooted last

Use this command in windows cmd to get the last time your server booted up or was rebooted.
C:\>systeminfo | findstr /i boot
System Boot Time: 10/5/2016, 1:13:08 PM
Boot Device: \Device\HarddiskVolume2
As to who rebooted it ;). You can search the system event log for events with id 1074.

Posted in Windows Server Operating System | Tagged , , , , , | Leave a comment

Put Scom Agents and Cluster Servers in Maintenance mode and reboot

Here is a script to put your scom agents including clusters in maintenance mode and rebooting them at a specified time. First you will have to create a task and a management pack in SCOM for rebooting the servers. Link on how to create the management pack is here. https://technet.microsoft.com/en-us/library/hh563486%28v=sc.12%29.aspx?f=255&MSPPError=-2147217396.
Works on System Center Operations Manager 2012 R2.

Create the input files and output files on the locations that you prefer. I have created them in C:\Reboots folder. Add your server names in the input file. Then the script given below can be put in a scheduled task and run at specified times or on demand. You can also run the script manually. Make sure that you modify the maintenance window.

I have not yet added any code to verify and alert if the rebooted servers are not back up.

Will probably do so at a later time. Till then feel free to use this one and modify any way that you like.

#################Script Start ####################################

$RootMS = "RMSName"
$Minutes =  90
$Comment = "Unknown"
#Setting up SCOM connection

Import-Module OperationsManager
$null = New-ScomManagementGroupConnection -ComputerName $RootMS
Add-PSSnapin "Microsoft.EnterpriseManagement.OperationsManager.Client" -ErrorAction SilentlyContinue

$eventLog = New-Object System.Diagnostics.EventLog("Operations Manager")
$eventLog.Source = "Maintenance Mode"

$Servers = GC "C:\Reboots\input.txt"
Function Out($output)
{
Out-File -Filepath "C:\Reboots\output.txt" -InputObject $output -Append
}

Out "###############  Starting Script at $(Get-Date)  ##########################"
foreach($Server in $Servers)
{

$output = "Starting for $Server on $(Get-date)"
Out $output

###Putting the agent and cluster in maintenance mode###########
$agent = Get-ScomAgent | Where-Object { $_.DisplayName –eq $Server -or $_.ComputerName -eq $Server -or $_.PrincipalName -eq $Server }
if(!$agent) { Write-Host "ERROR: $Server is not a monitored system in SCOM." -ForeGroundColor Red; Set-Location $originalPath; return }
$Server = $agent.PrincipalName
$startTime = (Get-Date).ToUniversalTime()
$endTime = $startTime.AddMinutes($Minutes)
if(($clusters = $agent.GetRemotelyManagedComputers())) {
$clusterNodeClass = Get-SCOMClass -Name Microsoft.Windows.Cluster.Node
foreach($cluster in $clusters) {
#$clusterObj = Get-SCOMClass -Name Microsoft.Windows.Cluster | Get-ScomMonitoringObject -Criteria "Name='$($cluster.ComputerName)'"
$clusterobj = Get-SCOMClass -Name Microsoft.Windows.Cluster | Get-SCOMClassInstance | ?{$_.displayname -eq $cluster.ComputerName}
if($clusterObj) {
$clusterObj.ScheduleMaintenanceMode($startTime,$endTime,"PlannedOther",$Comment,"Recursive")
$nodes = $clusterObj.GetRelatedMonitoringObjects($clusterNodeClass)
if($nodes) {
foreach($node in $nodes) {
Out "Putting $node into maintenance mode."
$eventLog.MachineName = $node.Name
$eventLog.WriteEntry("The server entered into maintenance mode $(if($Server -notcontains $node.Name){"on behalf of $Server"}).`r`n`r`nDuration:`t$Minutes minutes`r`nReason:`t$Comment","Information",42)
}
}
}
Out "Putting $($cluster.Computer) into maintenance mode."
New-MaintenanceWindow -StartTime $startTime -EndTime $endTime -MonitoringObject $cluster.Computer -Reason PlannedOther -Comment $Comment
}
}
else {
Out "Putting $Server into maintenance mode."
$eventLog.WriteEntry("The server entered into maintenance mode.`r`n`r`nDuration:`t$Minutes minutes`r`nReason:`t$Comment","Information",42)
New-MaintenanceWindow -StartTime $startTime -EndTime $endTime -MonitoringObject $agent.HostComputer -Reason PlannedOther -Comment $Comment
}
#####Sending commands to the server###########

$Task = Get-SCOMTask -DisplayName "Reboot Computer"
$Overrides = @{Arguments = '"$Target/Property[Type="MicrosoftWindowsLibrary7585010!Microsoft.Windows.Computer"]/PrincipalName$" "true"'}
$Instance = Get-SCOMClassInstance | ?{$_.Name -eq $agent.name}
Out "Starting task to reboot $($Instance.Displayname) at $(Get-Date)"
Start-SCOMTask -Task $Task -Override $Overrides -Instance $Instance

}

Out "###############  Script Complete at $(Get-Date) #########################"

#################Script End ####################################

I don’t take credit for all the scripts that I written. Whenever I can credit the original creators, I do.  If I don’t at times please do inform me so that I can include them in the page.

Posted in SCOM 2012, System Center Operations Manager | Tagged , , , , , , , , | Leave a comment

Visual Studio installation failing

Visual Studio 2015 installation failing.

Applies to 2013,2015. OS Windows 8.1

Installation kept failing with the following error in event log.

Faulting application name: vs_professional.exe, version: 14.0.23107.10, time stamp: 0x55414f16

Faulting module name: ntdll.dll, version: 6.3.9600.18233, time stamp: 0x56bb4e1d

Exception code: 0xc0000005

Fault offset: 0x0001dd93

Faulting process id: 0x14a8

Faulting application start time: 0x01d2105f30c9cadb

Faulting application path: C:\Parag\Softwares\VS2015\vs_professional.exe

Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll

Report Id: 6e7b1bf9-7c52-11e6-8264-64006a57cea4

Faulting package full name:

Faulting package-relative application ID:

This error was seen in the installation log file located in

C:\Users\Parag\AppData\Local\Temp\dd_vs_professional_20160916160240.log

[1A94:1A98][2016-09-16T15:59:06]e000: Error 0x800705b4: Failed to wait for child to connect to pipe.
[1A94:1A98][2016-09-16T15:59:06]e000: Error 0x800705b4: Failed to connect to elevated child process.
[1A94:1A98][2016-09-16T15:59:06]e000: Error 0x800705b4: Failed to actually elevate.
[1A94:1A98][2016-09-16T15:59:06]e000: Error 0x800705b4: Failed to elevate.

Solution:

Copied the installation files to a local drive from the ISO. Right click the vs_professional.exe. Check the box for Run this program as an administrator.

Then run the exe again.

 

 

 

Posted in SCOM 2012 | Leave a comment

Audit collection Services

How to determine the Server being used for Audit Collection Forwarding and Collecting.

Open the operations manager console and navigate to Monitoring–Microsoft Audit Collection Services — Collector or Forwarder. The state view should give you the names of the specific servers.

How to determine the SQL server being used for Audit Collection Database.

  1. Log on to the management server with Administrator permissions.
  2. Click Start, select Run, type regedit in the Open box, and then click OK to start Registry Editor.
  3. Under HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\OpsMgrAC, check the name in  Server value.
Posted in SCOM 2012 | Leave a comment

How to zoom a page using touchpad on laptop

For those folks who would like to zoom in and zoom out of a page but do not have the luxury of an external mouse with a scroll button for a laptop. Worry no more.

Hold Ctrl key and drag two fingers across your touchpad. This will zoom out if you swipe upwards and zoom in if you swipe downwards. Tested on HP,Lenovo and Dell laptops.

Not sure about the others but go ahead and give it a try. If it works or doesn’t ,do post in the comments with the make and model of your laptop to help others.

Posted in Miscellaneous | Leave a comment

Contacts not syncing between Android and Outlook.com

I recently had to get a new phone because my trusty old Nokia WP stopped charging altogether. I broke the USB port on the phone.

They really should be having a backup port on the phones. It takes a whopping amount to repair once they are out of warranty.

Anyways, I got this new Android phone and added my Hotmail account. The contacts synced perfectly the first time. But then I had to factory reset it once and when I added the account I could not see any contact syncing. Not matter how many times I reconfigured my account on the phone. The contacts just did not sync. I stumbled on this post which talks about making changes to my windows live account.

http://answers.microsoft.com/en-us/outlook_com/forum/oemail-oapps/outlookcom-not-syncing-all-my-contacts-to-my/5a30f3dc-1bfb-475a-a67c-b282d1cd9c89

But sadly I did not have the time for someone to make changes to my account. So, I made a backup of my account contacts by logging to the account from a computer. Then deleted all the contacts from my windows live account. Waited a couple of minutes, signed out.

and signed back in. Not really sure if that was required, though. Imported all the contacts from file after cleaning up the duplicates using MSExcel’s “Remove duplicates button” and without reconfiguring my account on the phone all the contacts started syncing.

Posted in Miscellaneous | Leave a comment