Mar 11, 2025
In our first blog post on ServiceNow London CMDB, we discussed addressing the duplication of configuration items. We learned about ServiceNow CMDB that contains relevant information about components and the relationships between those components. In this blog post, we will talk about resolving the missing configuration items (CI) relationships from servers.
The missing relationship from ServiceNow CMDB is one of the issues that is often faced by developers. Visibility of your IT infrastructure is highly essential, especially when there is a rapid increase of CIs such as hardware, software, appliances, virtual machines, cloud services and mobile devices.
All CIs are consolidated into a single CMDB, considering unknown CIs, inconsistent parent-child relationships, or ill-defined missing CI. Missing CIs are encountered during the CMDB identification and reconciliation process. And once they are encountered, it becomes necessary to resolve them.
Missing CI is a very common issue, but the causes might be several. Here are some of the reasons why we face a missing CI issue.
ServiceNow Discovery tool helps to search applications and devices on your network, and then update the CMDB with relevant information. All discovered CIs are stored in cmdb_ci table (which is the parent table) and classified in various tables according to infrastructure.
In general, data including servers and it’s storage and configuration information, network devices (e.g. printers and routers), software programs, virtual machines, cloud services (e.g. Azure and AWS) and many more are collected through ServiceNow Discovery, and stored in ServiceNow CMDB.
Discovery collects unique data for each type of devices and stores them in related tables, fields, and relationships. Discovery identifies and classifies information about relationships between configuration items and manages this data by dividing into subclasses/tables using a relationship between them.
Resolving the issue of missing CI is a high priority for any organization. In this section, we will see how it can be addressed. Here are three ways that can be used to fix all types of missing CIs.
For example, take a cmdb_ci_windows_server table:
This is an effective way to check for any missing CI relationship, but unfortunately it is time-consuming.
var servers = new GlideRecord(“cmdb_ci_win_server”);
servers.query(); //You can add filters as defined in reports as well
while (servers.next()) {
//Check the relationship exist for the specific server
var serverRel = new GlideRecord(“cmdb_rel_ci”);
serverRel.addQuery(“type.name”,”Runs on::Runs”); //Add another filter accordingly
serverRel.addQuery(“child”,servers.sys_id);
serverRel.query();
if(!serverRel.getRowCount())
{
//Then CI relationship is missing
}
}
The last option is to refer about CI duplication. One of the possible reasons for missing CI Relationship is CI duplication. You can find the solution to duplication issues in our earlier blog post – ServiceNow London CMDB: Addressing the duplication of configuration items.
Insight
The occurrence of missing CI relationships is common in ServiceNow CMDB. Once the accurate profile of a particular CI is loaded and ensured, it becomes easy to resolve this matter. ServiceNow CI relationships are a major part of the CMDB as it is the relationship between the CIs that differentiate the CMDB from the asset database. If you wish to know more about how you can manage your data with ServiceNow, get in touch with our experts.
Co-author: Bhumi Gothi is a Senior Technical Analyst at Softweb Solutions. She has an extensive hands-on experience over different modules of ServiceNow.
Need Help ?
We are here for you