Skip to page contentSkip to chat
ServiceNow support
    • Community
      Ask questions, give advice, and connect with fellow ServiceNow professionals.
      Developer
      Build, test, and deploy applications
      Documentation
      Find detailed information about ServiceNow products, apps, features, and releases.
      Impact
      Accelerate ROI and amplify your expertise.
      Learning
      Build skills with instructor-led and online training.
      Partner
      Grow your business with promotions, news, and marketing tools
      ServiceNow
      Learn about ServiceNow products & solutions.
      Store
      Download certified apps and integrations that complement ServiceNow.
      Support
      Manage your instances, access self-help, and get technical support.
Multiple application patterns complete successfully for dependent CI class but only one application CI is created - Support and Troubleshooting
  • >
  • Knowledge Base
  • >
  • Support and Troubleshooting (Knowledge Base)
  • >
  • Multiple application patterns complete successfully for dependent CI class but only one application CI is created
KB0746729

Multiple application patterns complete successfully for dependent CI class but only one application CI is created


947 Views Last updated : Apr 7, 2024 public Copy Permalink
KB Summary by Now Assist

Issue

Symptoms

Multiple application patterns complete successfully for dependent CI class, however only one application CI is created.

Release

All currently supported releases.

Cause

Application CIs depend on a parent CI, the main CI which is independent. Dependent CIs are identified using dependent identifiers. The parent identifier for different application classes is the "Application Rule" identifier. An identifier may be configured to fallback to a parent identifier before attempting to insert a new CI. The OOB "Application Rule" uses fields "Running process command", "Running process key parameters", and "Class" to find matches. It is possible that multiple applications on the same host have the same "Running process command", "Running process key parameters", and "Class". The OOB "Application Rule" therefore would not be a good identifier to fallback to if this is acceptable or expected for such application being discovered. This would lead to only one such application being created per parent CI. 

To confirm the "Application Rule" is being used: 

  1. Collect the input payload passed to the identification engine, will be available in the ecc_queue input used by the pattern.
  2. Navigate to "Configuration > Identification/Reconciliation > Identification Simulation".
  3. Select "Start with Existing Payload".
  4. Select "ServiceNow" source, paste payload, and click execute.
  5. Review "Output" section to see rules used by the identification engine.

Example output:

Output Payload :
{
"items": [
{
"className": "cmdb_ci_linux_server",
"operation": "UPDATE",
"sysId": "edb652ca133837403ece70404244b085",
"identifierEntrySysId": "Unknown",
"identificationAttempts": []
},
{
"className": "cmdb_ci_db_db2_instance",
"operation": "UPDATE",
"sysId": "789a52ce133837403ece70404244b045",
"identifierEntrySysId": "8985a23ec3f00200d8d4bea192d3ae08",
"identificationAttempts": [
{
"attemptResult": "NO_MATCH",
"identifierName": "DB2",
"attributes": [
"db_name",
"installed_dir",
"sys_class_name",
"tcp_port"
],
"searchOnTable": "cmdb_ci_db_db2_instance"
},
{
"attemptResult": "SKIPPED",
"identifierName": "Database instance rule",
"attributes": [
"serial_number"
],
"searchOnTable": "cmdb_ci_db_instance"
},
{
"attemptResult": "SKIPPED",
"identifierName": "Database instance rule",
"attributes": [
"edition",
"name",
"tcp_port"
],
"searchOnTable": "cmdb_ci_db_instance"
},
{
"attemptResult": "SKIPPED",
"identifierName": "Application Rule",
"attributes": [
"cl_port",
"sys_class_name"
],
"searchOnTable": "cmdb_ci_appl"
},
{
"attemptResult": "MATCHED",
"identifierName": "Application Rule",
"attributes": [
"running_process_command",
"running_process_key_parameters",
"sys_class_name"
],
"searchOnTable": "cmdb_ci_appl"
}
]
}
],
"relations": [
{
"className": "cmdb_rel_ci",
"operation": "NO_CHANGE",
"sysId": "7c9a52ce133837403ece70404244b049",
"identifierEntrySysId": "Unknown"
}
]
}

Resolution

  1. Create a dependent identifier for the CI class if there isn't already one.
  2. Set the "Allow fallback to parent's rules" to false for the identifier/identifier rules being used for such CI, in the previous example identifier for cmdb_ci_db_db2_instance.

Additional Information

Helpful documentation:

  • Effective usage of CMDB Identification
  • Identification and reconciliation components and process
  • IdentificationEngineScriptableApi - Global

 


The world works with ServiceNow.

Sign in for more! There's more content available only to authenticated users Sign in for more!
Did this KB article help you?
Did this KB article help you?

Attachments

Attachments

No attachments found

How would you rate your Now Support digital experience?

*

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

Very unsatisfied

Unsatisfied

Neutral

Satisfied

Very satisfied

What can we improve? Please select all that apply.

What are we doing well? Please select all that apply.

Tell us more

*

Do you expect a response from this feedback?

  • Terms and conditions
  • Privacy statement
  • GDPR
  • Cookie policy
  • © 2025 ServiceNow. All rights reserved.