Upgrading the xMatters app for ServiceNow Washington DC

The xMatters app for ServiceNow has been updated to be compatible with the latest ServiceNow Washington DC release (and previous releases Tokyo, Utah, and Vancouver). While this is great news for anyone wanting to use the latest version of ServiceNow, it does mean that previous versions of the xMatters app are now obsolete and incompatible with the new Washington DC version.

Using Version 5.7 (or older) of the xMatters app for ServiceNow with ServiceNow Washington DC will not send alerts, but only log a NullPointerException.

Depending on your ability to upgrade your version of the app, you have two options on how to proceed.

Option 1: Upgrade to version 5.8.3

We strongly recommend that if at all possible, you upgrade to version 5.8.3 of the xMatters app and reapply any applicable customizations you may have made.

Before upgrading, ensure you have a rollback plan in place, and test all changes in your non-production environments if available. 

To upgrade your xMatters app:

  1. Read over the upgrade instructions and documentation available in our online integrations help.
  2. Backup your xMatters app and update set.
  3. Perform the app upgrade.
  4. If you have customized the xMatters app or your integration, review the upgrade history and resolve any conflicts.

If you're not sure whether your integration has been customized, contact Support or your Customer Success Manager.

Option 2: Manually update the script within the xMatters app

If you are unable to update the xMatters app version due to internal change management processes, you can modify the xMattersEvent script within your ServiceNow instance to include the required code.

This should only be performed as a temporary workaround; you should upgrade your xMatters app version as soon as possible.

To modify the script:

  1. In ServiceNow, locate the xMattersEvent script include and open it for modification.
  2. Within the script, find the addAllIncidentProperties function.
  3. Add another line within the function as shown:
addAllIncidentProperties: function( incidentRecord ) {
this.log.debug('Adding all incident fields' );
var fields = new GlideRecord( 'sys_dictionary' );
fields.addEncodedQuery('name=task^ORname=incident');
fields.addEncodedQuery('internal_type!=collection^ORinternal_type=NULL'); // Added this line
fields.query();
var count = 0;
while( fields.next() ) {
var fieldName = fields.element;
// this.log.debug('Trying to add ' + fieldName );
this.addProperty( fieldName, incidentRecord.getElement( fieldName ) );
count++;
}
this.log.debug('addAllIncidentProperties: Total properties added: ' + count);
  1. Save and close the script file and verify the integration is working correctly.
Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.