What is best practice for stale CI relationships?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
5 hours ago
I'm in the process of cleaning up our CMDB which hasn't been managed for many years.
One thing I've noticed is that there is a high volume (high enough to breach the OOTB threshold) for stale relationships.
I've since established retirement policies for many of these records but the relationships remain.
What is the best practice approach to resolving these stale relationships? Not sure if archiving would alleviate this issue or if there is a better way.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
5 hours ago - last edited 5 hours ago
Hi @MBarrott ,
Stale relationships occur when at least one of the CIs involved has not been updated or rediscovered within the defined threshold (like 90 days). These are flagged by the Relationship Health and CMDB Health dashboards...
Best practice guide based on official ServiceNow recommendations....
1. Use CMDB Data Manager: Set policies that automatically retire or archive stale CIs once they meet your criteria (e.g., not rediscovered for 90+ days). After retiring, run the Correctness and Relationship Health jobs to detect stale links.
2. Automate Relationship Cleanup: When CIs are retired, use a Business Rule to delete related cmdb_rel_ci records. ServiceNow KB confirms these cleanup steps are necessary.
3. Schedule Bulk Removal: For high volume, use Delete Jobs or sys_auto_flush to regularly purge stale CIs and relationships automatically.
4. Monitor Health & Discovery: Use CMDB Health Dashboards and regular discovery scans to catch data decay and maintain CI accuracy.
If you found my response helpful, please mark it as ‘Accept as Solution’ and ‘Helpful’. This helps other community members find the right answer more easily and supports the community.
Kaushal Kumar Jha - ServiceNow Consultant - Lets connect on Linkedin: https://www.linkedin.com/in/kaushalkrjha/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 hours ago
Hi @kaushal_snow,
I'm already doing steps 1, 3 and 4 respectively so it's good to know I'm on the right track.
With regards to step 2, do you know the KB article which discusses the relationship cleanup?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
5 hours ago
Hi @MBarrott
https://www.servicenow.com/community/cmdb-forum/to-handle-staled-cis-in-cmdb/m-p/240347
We recently did this exercise:
-
when count is high and treated it as a one-time task. Then we created a script and manually moved the CI to a retired state.
However, this is not considered best practice.
The recommended approach is:
-
Create a policy (for certification) that automatically generates the task.
-
The task should then be assigned to the appropriate member.
-
That member can take action to retire the CI.
-
Later on, a separate policy can be created to archive it.
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.
Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]
****************************************************************************************************************