Posts Tagged ‘ServiceManager’

I have always heard complaints from some of the analysts in my company about having to install the Service Manager Console on their machines and then complaining about having to learn a new application.

So, I went searching around and found a great application called Cireson SCSM Web Console, this allows analysts to update Incidents via a newly designed web portal for Analysts. Since the console is designed in HTML5, the web console is browser agnostic. This face also helps some companies to adopt this as it allows analysts to use all types of devices to update incidents.

The guide provided to install the application is Comprehensive and easy to follow. Just make sure you do all the steps. I have added some screenshots of errors I got along the way, trying to “jump the gun” and see the new Web Console in action.

“Issues and Errors” I ran into, all of which are easily fixed.

Server error in ‘/’ Application


This error is pretty much self-explanatory, I tried to open the console before the Cireson Management Pack had been imported. A simple fix, import the Management Pack.


Again, this looks intimidating. This is very easy to fix if you look at error. When you are going through the installation guide, it is very easy to miss a step. Like this, when configuring the web.config file with Active Directory Connector information, it is very easy to find the space for the DN Name of your domain. When the above happens, it is simple a case of not adding the full DN for a DOMAIN CONTROLLER.

But now, onto the console in action. Just one side note, for now the Cireson SCSM Web Console handles only incidents, I have heard that plans are in progress for the Cireson SCSM Web Console to be extended to include Service Requests and potentially Problems, WOW!!!!!!

The Cireson SCSM Web Console is really easy to navigate and very easy to understand, anything you can do in the actual console, you can do on the Cireson SCSM Web Console. So, if you make the Cireson SCSM Web Console publically available, your Analysts can update from anywhere with any device as the Web Console is NOT dependent on Microsoft Silverlight.

As you can see below, the Web Console is very nicely put together and gives you all the information you need at a quick glance.


You can click an incident to open it and you will be presented with some detailed information regarding the incident as can be seen below. You can also “Edit Incident” from the Web Console to update it.


From the top Level Tabs, you can see you access all the information you could regarding Incidents


Below are screenshots of each “Section” from the Top Level Menu”

Incidents can also be LOGGED from the Web Console, displaying all information from your SCSM Implementation


The “My Team’s Incidents” leverages the groups and information provided during the installation of the Web Console and provides a consolidated view of the Incidents assigned to the “Support Group” to which the currently logged on user is a member and this works very nicely with Cireson SCSM Group Assign


The “All My Incidents” View provide a view of all incidents assigned to the currently “logged on” user.


The “All Incidents” view provides an overview for all incidents within your Service Manager environment. By default, only active incidents are shown, you can select the checkbox to show resolved incidents.


The “Search Incidents” views allows you to search via a number of different fields, making it really easy to find any incidents you are looking for.


The “Configuration Items” view is the representation of the CI Items within the organization on the Web Console.


The Cireson SCSM Web Console is a great addition to your Service Manager environment. It allows incidents to be updated quickly and easily from any device. I would highly recommend it.

(E-Mail me)


Follow me.

facebook-small322252222 Facebook (Personal)

twitter-small322252222Twitter (Personal & System Center)

scsmlogo252 Twitter (System Center Focused)



So one of the biggest issues I have with Service Manager is actually user based as seems to be quite difficult to teach the concept of this for some strange reason. So, as a work-around I have created views that cater for the issue I am about to discuss.

The issue is as follows, when a Work Item gets re-assigned to a new Analyst, 99% of the time, the associated Support Group does NOT get changed. Let’s take the following example.

An incident is logged and is automatically assigned to the “Service Desk” team, now an analysts investigates the incident and determines that the incident actually belongs to a member of the “Network Team”. So, typically, the “Assigned to” person is changed and the new analyst will get an e-mail stating that a call has been assigned to him/her. However, the incident now reflects the following

Analyst : Network Analyst Thumbs up

Support Group : Service Desk Thumbs down

So basically, if you were to have a queue or view that shows up all incidents assigned to the “Network Team”, this incident would not show up however the analyst has received and e-mail stating that an Incident has been assigned to him/her, it can of course be found by using “Assigned to Me” View.

There is a solution here. Enter Cireson and their fantastic applications for Service Manager. SCSM Group Assign allows the extended functionality of selecting the required Support Group and then NARROWS the list of Analysts to that specific group. This ensures that BOTH the Support Group and Analyst are changed at time of re-assignment, making the creation of views and Queues a lot simpler and then ensures that your views based on Support Group are 100% accurate. The solution extends the context pane and adds a “Assign Analyst by Group” option


What SCSM Group Assign allows you to is the following (this is my test lab), you will however get the idea.

Below is a screenshot of the groups that I have created within Active Directory to “illustrate” my different Support Groups. You will see a few groups.

1. For all analysts

2. To represent different support Groups (I have called them Tier 1,2 and 3, as this is the vanilla experience with SCSM)


Ok, so below is a screenshot of a re-assignment using the new “Assign Analyst by Group” option. For this example I have used “Tier 1”. Note how the “Analyst” selection is limited to only 2 Analysts as per my groups earlier. Namely Analyst 1 and Analyst 2.

Tier1-group assign

The next screenshot depicts the same process only to “Tier 2” this time. This time the selection is limited to Analyst 3 and Analyst 4.

Tier2-group assign

The re-assignment is logged in Service Manager in the exact same way as any analyst assignment. This is an extension of the capabilities of Service Manager.

I would highly recommend SCSM Group Assign for any Service Manager installation.



Follow me.



Just recently I was looking for a way to notify users about Inactive incidents as I have some departments that tend to ignore their work items and an e-mail about their “untouched” incidents seems to motivate them. So after some searching I found this script from Andreas Baumgarten

Please note : I only modified this script to extend its use to other Statuses to be monitored. All credit for the script goes entirely to Andreas Baumgarten

Code is below

# Configure Last Modified Days Before
$ModifiedBefore = 3

#Configure Incident Status
$IncidentStatus = 'Active'

# Configure your mail server, the recipient and the sender of the mail
# $smtphost=”mailserver.yourdomain.local”
# $from=”mail@yourdomain.local”


# Send-Mail function
function Send-Mail
$smtp = new-object$smtphost)
$mail = new-object System.Net.Mail.MailMessage
$mail.from= $From
$mail.subject= $Subject
$mail.body= $Body

# Some other variables
$BeforeDate = (Get-Date).AddDays(-$ModifiedBefore).ToString("MM/dd/yyy HH:mm:ss")
$Status = Get-SCSMEnumeration IncidentStatusEnum.$IncidentStatus$
$AssignedUserObjectRelClass = Get-SCSMRelationshipClass System.WorkItemAssignedToUser
$IncidentClass = Get-SCSMClass -name System.WorkItem.Incident$

#Get all incidents last modfied xy days before
$Incidents= @(Get-SCSMObject -Class $IncidentClass | Where {($_.Status -eq $Status -AND $_.LastModified -lt $BeforeDate)})

If ($Incidents.count -gt 0)

#Get all assigned incidents from list
foreach ($Incident in $Incidents)
# Get AssignedToUser
$AssignedUser = Get-SCSMRelatedObject -SMObject $Incident -Relationship $AssignedUserObjectRelClass

# Incidents AssignedTo is not NULL
If ($AssignedUser.Displayname -ne $NULL)
#Get email adress of AssignedToUser
$EndPoint = Get-SCSMRelatedObject -SMObject $assignedUser -Relationship $UserPref|?{$_.ChannelName -like '*SMTP'}
$Sendto = $Endpoint.Targetaddress

#Create Output
$Output = 'This Incident has been inactive for ' + $ModifiedBefore + ' day(s): <br>' + $Incident.ID + ' - ' + $Incident.Title + ' - Last Modified: ' + $Incident.Lastmodified
#Send email
$To = $Sendto
$Subject = 'Inactive incident for ' + $ModifiedBefore + ' day(s): ' + $Incident.Id + ' ' + $Incident.Title
$Body = $Output
Send-Mail $From $to $Subject $Body

Remove-Module SMlets -force 

Okay, so now that the code is there, I had to make some modifications in order for the Code to work with “NON-DEFAULT” Incident Statuses. I have created some additional Pending statuses.

The key line in this code is

Configure Incident Status
$IncidentStatus = 'Active'


$Status = Get-SCSMEnumeration IncidentStatusEnum.$IncidentStatus$

This allows you specify the Status. However if you use additional “NON-DEFAULT” statuses, this would need to be modified to suit your needs. You would need to modify the line of code to read as follows.

$IncidentStatus = 'Enum.847741a452db4d529741005ea73aead8'


$Status = Get-SCSMEnumeration $IncidentStatus$

You will notice the change of $IncidentStatus to a “ENUM” Value as this is a “NON-DEFAULT” value, you need to use the ENUM value. This can be gotten by using the following with SMLets

Get-SCSMEnumeration | Format-list | out-file

Below, is a screenshot to help illustrate this further.


Once you have a list of all your Enumerations, then search for the required value, for example “Pending – Waiting for 3rd Party”, you will then see a “Name” value and that whole string is your ENUM value.

You will also see that the $Status line has been changed to cater for the ENUM value.

Modify to meet your needs and create a workflow if you want to.

Follow me.



So, I have been running Service Manager for quite some time now. From SCSM 2010 to SCSM SP1 and most of the CU’s before I upgraded to SCSM 2012 Beta and RC and then to RTM (with the help of a Microsoft TAP Program). Service Manager is now quite entrenched in our business and has been running quite well for a very long time. However, a little while ago we began to experience performance issues with the Console and the logging of calls and the application of Workflows.

Time for some investigation.

There was a general slowdown with everything and business was not happy with this. So let the troubleshooting begin. Since there is a SQL back-end, I decided that this was a good place to start.

I was running a sp_who2 on my SQL server and I was seeing a lot of “blocking” happening. There will some “blocking” for a very short while, while the ServiceManager database is updated. However, I was seeing “blocking” SPID’s consuming processor time for several minutes and this is NOT normal at all.

As a result of this, my workflows were not kicking off properly and a few other issues including the slow pickup of e-mailed in incidents from SMTP “Drop Folder” and extremely slow response when assigning incidents to new people/tiers to name but a few. In general, Service Manager was SLOW!!!!

After much troubleshooting and some help from MS. It was determined to be a corrupt workflow, what had actually happened to me, is that my MP containing my Workflow was corrupted.

So, I stopped the “Health Service”, disabled all the workflows and slowly started re-enabling workflows and then starting the “Health Service” again and slowly started testing like that and I was able to determine that any workflow or template within a set MP was causing the SQL Blocking. As a result, I re-created the workflows and Templates from scratch and now I have no issues at all.

Slow and painful, but well worth it now.

Follow me.

facebook-small322252222 twitter-small322252222