Running the Analyzer utility to identify non-permitted customizations


Before upgrading AR System server, run the Analyzer utility (analyzer.bat) to identify non-permitted customizations. 

You can locate the Analyzer utility in the <developer_studio_install_location>/analyzer folder.  

This utility helps identify customizations that are not supported by AR System server. Non-permitted customizations can cause problems during upgrades or migrations or result in functionality issues when modifying the objects later on.

Before running the Analyzer utility, make sure to check the following:

  • The JAVA_HOME environment variable is set.
  • The Java heap size is set as per your requirements. We recommend having a minimum of 1 GB or a maximum of 2 GB as the Java heap size. You can change the Java heap size from the Analyzer.bat file located in the analyzer folder.

Analyzer utility and options

The Analyzer utility syntax is provided as follows:

analyzer.bat -x <ARServer hostname> -u <admin user name> -p <password> -portnum <ARServer port number>
-c "C:\Program Files\BMC Software\ARSystem\SaasAnalyzerRules.xml" -A -F -N -Q -T -o "C:\Builds\Tools\analyzerResultsAll.csv" -og 1

In this syntax, replace the placeholders with the actual values.

The following table describes the command-line options in the Analyzer utility. You can use some of all of the options in any order in the command:

Option

Description

-u

Name that identifies the user account for the AR System server.

-p

Password for the user account.

If you have a blank password, you can ignore this option.

-x

Name of the server to connect to.

-portnum

TCP port number to connect to.

If the port number is unknown, use -portnum 0.

-o

The CSV file path for obtaining the results from the Analyzer utility.

-excludeIgnoredResults

Reports the results that are marked as ignored.

-i

Definition file path for specifying objects to be analyzed

-a

Name of an active link

-A

All active links names

-f

Name of a form

-F

All form names

-n

Name of an application

-N

All application names

-q

Name of an escalation

-Q

All escalation names

-t

Name of a filter

-T

All filter names

-r

Include related objects for analysis. The valid options are as follows:

  • none (default)
  • directly
  • all
  • content
-c

The XML configuration file path for setting advanced options

Analyzer rules

The Analyzer rules are attached for your reference.

The following table describes some of the rules run by the Analyzer utility and offers suggestions for handling objects that violate these rules:

Rule Name

Severity

Description

Solution

CMDBCustomizationsRule

Medium

This rule applies when you create an overlay of a CMDB form.

Do not create overlay of CMDB forms.

CustomFieldAndViewIDRangeRule

High

This rule applies when you use BMC reserve range for Field ID or View ID.

Use the Field ID range reserved for customers. For information about reserved field ranges, see Reserved-field-ranges.

NonBMCUserModificationsRule

Low

This rule applies when an unauthorized user tries to modify an object.

Only a valid user should modify the objects. The list of valid users is specified in the SaasAnalyzerRules.xml file.

FullViewOverlayRule

High

This rule applies when you add all fields to a view overlay.

You must add only the fields that you want to customize and relocate.

SelectionItemNumberRule

Medium

This rule applies when the Selection ID for overlay selection fields is not an odd number.

Use an odd number for the Selection ID field.

UnqualifiedEscalationsRule

Medium

This rule applies when an escalation does not have a qualification.

Add a qualification for every escalation.

DirectSQLRule

Medium

This rule applies when any overlay or a custom object has a direct SQL action.

Do not add direct SQL action to an overlay or custom object.

RunProcessRule

Medium

This rule applies when the overlay or custom object has RunProcessAction.


Do not run any operating system command or binaries through RunProcessAction.

UnqualifiedSetPushFieldsRule

Medium

This rule applies when any overlay or custom object has a qualification.

Add a qualification to a Push field action.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*