Convert manual services to application services using API
Summarize
Summary of Convert manual services to application services using API
This feature allows ServiceNow customers to convert existing manual services into application services using a JavaScript API. Application services enable Event Management to monitor service performance and detect health issues, whereas manual services are now deprecated and unsupported. Converting manual services to application services is essential to maintain compatibility with current ServiceNow capabilities and leverage enhanced service monitoring.
Show less
Key Details
- The conversion moves manual service records from the Manual Services [cmdbciservicemanual] table to the Mapped Application Service [cmdbciservicediscovered] table by changing the record class.
- All original manual service attributes (name, owner, operational status) and associated configuration items (CIs) are retained after conversion.
- The system updates CI connections based on the latest CMDB state and applies CI impact rules.
- The maximum number of CI connections added during conversion is controlled by the sa.service.maxciservicepopulation system property, defaulting to 1,000. Exceeding this limit causes the conversion to fail.
- To avoid issues, run conversions in small batches (around 10 services) to isolate problematic services easily.
- Application services do not support certain CI types (e.g.,
cmdbciendpoint,cmdbcitranslationrule,cmdbciconfigfile,cmdbciqualifier,cmdbciapplicationcluster). These must be removed before conversion. - Instances using domain separation must ensure all CIs in a service belong to the same domain; otherwise, conversion will fail.
- Manual services are static and retain their structure post-conversion. To synchronize with current CMDB data, either repopulate the manual services prior to conversion or run updates post-conversion.
- Ensure any automation related to manual services (business rules, scheduled jobs) is fully built and tested before starting conversion.
Using the Conversion API
The provided JavaScript API method is BusinessServiceManager.migrateManualToApplicationService(String serviceid), where serviceid is the sysid of the manual service you wish to convert.
The method returns a Boolean: true if conversion succeeds, and false if it fails.
Example to convert a manual service with sysid 451047c6c0a8016400de0ae6df9b9d76:
var bsManager = new SNC.BusinessServiceManager();var res = bsManager.migrateManualToApplicationService("451047c6c0a8016400de0ae6df9b9d76");
Practical Implications for ServiceNow Customers
- Converting manual services is mandatory because manual services are deprecated and unsupported.
- Application services provide enhanced monitoring capabilities, crucial for Event Management and service health visibility.
- Careful preparation is required, including removing unsupported CIs, respecting domain separation, and validating automation workflows.
- Configuration of system properties may be necessary to handle large CI populations during conversion, balancing performance and completeness.
You can use a JavaScript API to convert existing manual services to application services. Event Management can use application services to monitor service performance and identify health issues.
- The manual service record is moved from the Manual Services [cmdb_ci_service_manual] table to the Mapped Application Service [cmdb_ci_service_discovered] table by changing the record class.
- All the original manual service attributes, such as, name, owner, and operational status, are retained in the application services.
- The configuration items (CIs) of the manual service are retained in the application services after the conversion.
- The system queries the CMDB for the latest CI changes and applies CI impact rules.
Attempting to process more CIs than the value specified in the sa.service.max_ci_service_population property causes the operation to fail.
Run the conversion process in small chunks of approximately 10 at a time, to make it easier to pinpoint the problematic service in the event of a conversion problem.
- cmdb_ci_endpoint
- cmdb_ci_translation_rule
- cmdb_ci_config_file
- cmdb_ci_qualifier
- cmdb_ci_application_cluster
If your ServiceNow instance uses domain separation, the conversion fails if CIs from multiple domains are in the same service. Replace or remove relevant CIs before conversion. The converted application services contains only CIs assigned to the same domain as the application services.
The JavaScript API is:
BusinessServiceManager.migrateManualToApplicationService(String service_id)| Name | Type | Description |
|---|---|---|
| service_id | String | sys_id of the manual service to be converted |
| Type | Description |
|---|---|
| Boolean | true for a successful conversion, false for a
conversion that failed |
sys_id of an existing manual service is
451047c6c0a8016400de0ae6df9b9d76, run the following API to convert it
to an application services:var bsManager = new SNC.BusinessServiceManager();
var res = bsManager.migrateManualToApplicationService("451047c6c0a8016400de0ae6df9b9d76");