Domain Separation SupportLast updated on 14 April, 2023
The LogicMonitor Data Exchange (LMDX) integration application for data synchronization between ServiceNow (SN) and LM Dexda supports SN instances that have domain separation enabled. This allows for the logical separation of an SN instance into separate domains, where a single instance can support multiple organizations. This lets for example MSPs (Managed Service Providers) segregate their events, alerts and insights by tenant. See Grouping by Tenant and Domain Separation.
Note:The LMDX application itself is not domain separated, and thus will be in the Global domain. This is because the SN admin role is required for security reasons for users to be able to use the application.
All LMDX artifacts (LMDX config, Outbound Transform Map and Outbound Field Maps) must be created within the global domain to ensure the application works correctly. The only exception is the Business Rule – these must reside in the primary domain of your instance. See the ServiceNow documentation.
Note: If you have set up the application to automatically create artifacts, the domains for these artifacts will be assigned automatically as part of the creation process. See Setting up a new Table.
Enabling Domain Support
Do the following to enable domain support for LMDX:
- Navigate to Configuration > Configuration properties, and set the system property x_lomo_dx.domainEnabled to “true”.
- Under Domain Separation > Endpoints, add all the LM Dexda URLs required by creating a new record for each URL, adding the Endpoint URL and the API key provided by your LM Dexda administrator.
- Create an Enabled domain record defining which ServiceNow domain should synchronize using LMDX. This record links the ServiceNow domain to an LMDX endpoint. In the Dexda domain field, enter the value provided by your Dexda administrator (this will be the Tenant ID in LM Dexda).
- The Config table displays a mandatory Domain field indicating which Enabled domain record is associated with a Config record.
Using Default Configurations with Domain Separation
To use the Default Configurations, you must do the following:
- Open the Config record and associate it with an Enabled domain record.
- Move the Business Rule that is associated with the Default configuration (for example LMDXDefaultInc sync) from the global domain to your instance’s primary domain.
For LMDXDefaultInc only:
- Navigate to the LMDXDefaultInc import (x_lomo_dx_incident_import) Import Set Table and add a string field labeled Domain. The field will be named u_domain.
- Navigate to the LMDXDefaultInc Import Transform Map and add a new Field Map for the new Domain field pointing to the target field Domain.
Domain Hierarchy Support
LMDX supports domain hierarchies. If a record in a child domain matches the parameters set for a Config record in a parent domain, that record triggers the parent domain’s config. This allows for configuration standardization across multiple child domains, for example different customers. You can make changes in one place and LMDX will apply it across all child domains.
Recommendation: If there is a Config record set for both a child domain and its parent, then any interaction uses the child domain’s Config record. Therefore, you should not set Config records to be for your primary domain, unless you want to process it regardless of the record’s domain.
Note: LMDX does not support instances with multiple domain hierarchies. This is because it relies on the primary domain always being at the top of the domain hierarchy.
Batch Payloads in Domain Separated Instances
You must set up an individual scheduled job per Enabled Domain setup in LMDX. All scheduled jobs must have the name of the SN domain added as a string parameter in the script.
For more information see Sending Batch Payloads.