Problem Management

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.

Example 1. Task: Inspect the problem creation playbook
  1. Open the VS Code tab in your lab environment

  2. Locate and open the problem-attach.yml file

  3. Review the playbook structure and logic

  4. 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.

Example 2. Procedure: Launch the problem attachment job
  1. Navigate to the Automation Controller tab

  2. Go to Automation Execution > Templates

  3. Locate the 2 - Attach problem (problem-attach.yml) job template

  4. Click the rocket icon (🚀) to execute the job

What Happens During Execution

The playbook performs these operations:

  1. Query Phase: Searches for incidents created by your user account

  2. Problem Creation: Creates a new problem record in ServiceNow

  3. Relationship Establishment: Links the problem to the identified incident

  4. 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

Example 3. Procedure: Check the new problem
  1. Access the ServiceNow tab using your lab credentials

  2. Select the "Favorites" tab and select "Problem - assigned to me"

  3. Select the appropriate problems view

  4. 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

Example 4. Procedure: Check incident-problem relationship
  1. In ServiceNow, navigate to Self-service - Incidents

  2. Select your incident from Module 1

  3. Review the incident details for problem references

  4. 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

Expected Relationship

Field Expected Value

Incident Status

May be updated to "In Progress" or similar

Problem Reference

Should display the new problem number

Last Modified

Should reflect the time of problem attachment

Related Records

Problem should appear in related lists

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.