Problem Management
Learn how to automate ServiceNow problem management by creating problems and linking them to existing incidents.
Introduction
In ServiceNow’s ITIL implementation, a problem represents the underlying cause of one or more incidents. Problems are used to:
-
Identify root causes of recurring incidents
-
Prevent future incidents through permanent fixes
-
Track workarounds and known errors
-
Maintain relationships between incidents and their underlying causes
The root cause of a problem may not be known at creation time and often requires investigation through the problem management process.
Understanding Problem-Incident Relationships
Problems and incidents have a many-to-one relationship:
-
One problem can be associated with multiple incidents
-
Each incident can be linked to at most one problem
-
Problems help identify patterns and systemic issues
Review the Playbook
A new playbook called problem-attach.yml has been added to your VS Code workspace.
-
Open the VS Code tab in your lab environment
-
Locate and open the
problem-attach.ymlfile -
Review the playbook structure and logic
-
Pay attention to how it queries for existing incidents
Key aspects to notice:
-
The playbook first queries for existing incident numbers you created
-
It uses the returned incident data in the problem creation task
-
The problem is automatically linked to the incident
-
Additional problem-specific fields are populated
Attach a Problem
Execute the playbook to create a problem and associate it with your existing incident.
-
Navigate to the Automation Controller tab
-
Go to Automation Execution > Templates
-
Locate the
2 - Attach problem (problem-attach.yml)job template -
Click the rocket icon (🚀) to execute the job
What Happens During Execution
The playbook performs these operations:
-
Query Phase: Searches for incidents created by your user account
-
Problem Creation: Creates a new problem record in ServiceNow
-
Relationship Establishment: Links the problem to the identified incident
-
Field Population: Sets appropriate problem details and categorization
Monitor the job output to see:
-
Which incident was found and selected
-
The problem number that was created
-
The relationship establishment between records
Inspect Results
Verify that the problem was created and properly linked to your incident.
Verify Problem Creation
-
Access the ServiceNow tab using your lab credentials
-
Select the "Favorites" tab and select "Problem - assigned to me"
-
Select the appropriate problems view
-
Locate your newly created problem
Look for:
-
A new problem number (e.g., PRB0012345)
-
Your username in the problem description or assignment
-
Proper categorization and priority settings
-
Timestamp matching your job execution
Verify Incident Update
-
In ServiceNow, navigate to Self-service - Incidents
-
Select your incident from Module 1
-
Review the incident details for problem references
-
Confirm the problem number appears in the related records
The incident should now show:
-
Updated status (if applicable)
-
Reference to the associated problem number
-
Modified timestamp reflecting the relationship update
Understanding the Automation
This module demonstrates several important automation concepts:
-
Data Querying: How to search for existing records using Ansible
-
Dynamic Relationships: Creating links between different record types
-
Workflow Integration: Building upon previous automation steps
-
ITIL Process Automation: Implementing standard ITSM workflows
Next Steps
With your problem successfully created and linked, you’re ready to proceed to Module 3, where you’ll learn about change management and how to create change requests for resolving problems.
Troubleshooting
If you have encountered an issue or have noticed something not quite right, please open an issue on GitHub.