This documentation supports the 22.1 version of BMC Helix ITSM: Asset Management.To view an earlier version, select the version from the Product version menu.

The proper license types are not generated


Issue Symptom

The license job is not running properly.

Issue Scope

When you use the license type wizard to create a license type, a set of rules is generated in the License Engine forms and stored as metadata. These forms start with a prefix of RLE. When the license engine runs, it executes these rules.

Resolution

Debugging tips for troubleshooting the issues in license type

Before you begin debugging, ensure that you back up the license type forms. License type forms can be backed up to ensure there is no loss of data that prevents you from using your existing license types.

To back up the forms, before you begin troubleshooting, export the license type forms listed in the following table by using Developer Studio. Then you can import them if you need to recover them at a later time.

List of license type forms

  • AST:ConfigAction_CalculateSpecificData
  • AST:ConfigAction_GetSpecificData
  • AST:Config_ActionBase
  • AST:ConfigCompliance_RuleReference
  • AST:ConfigConnection_RuleFieldMapping
  • AST:ConfigCompliance_RuleDefinition
  • AST:ConfigBasicQuestionRegistry_DispProp
  • AST:ConfigBasicQuestionRegistry_Base
  • AST:ConfigLicenseTypeRegistry_DispProp
  • RLE:ComplexRuleSpecificData
  • RLE:CalculationRuleSpecificData
  • RLE:GetRuleSpecificData
  • RLE:LoopRuleSpecificData
  • AST:ConfigLicenseTypeRegistry_Base
  • AST:ConfigCompliance_ActionSelectList
  • AST:ConfigAction_UpdateSpecificData
  • AST:ConfigRuleSet
  • RLE:RuleSet
  • RLE:RuleSetType
  • RLE:BaseRule
  • RLE:UpdateRuleSpecificData
  • AST:ConfigAction_CompareSpecificData

 

Tip

Before trying to debug licenses, familiarize yourself with the rules engine configuration described in Action Request System documentation:


To help debug problems, you can turn logging on at the engine level.

To log all of the rules as they execute, you can set the log level to debug. Then you can examine the rules to determine whether they are being translated to the right fields, are returning the right results, and so on. The log file is in the DB directory of the AR System server  and is called arjavaplugin.log.

For more information about setting the log level, see Configuring-the-license-engine.

Every license type created by the license type wizard creates a corresponding set of rules that are stored in the license engine rule forms and start with a prefix of RLE:.

The corresponding rules created are as follows:

  • Query operations translate into GET rules.
  • Create/modify operations translate into UPDATE rules.
  • Computational operations translate into CALCULATE rules.
  • Comparison operations translate into COMPARE rules.

Important

Do not delete the data in the following forms directly because the functionality for the corresponding license types will not work. Also there are a few system rules shipped with 7.5.00 that are loaded in the RLE forms at installation time. These rules should not be modified or deleted because they are used by all license types.

Following are some of the RLE forms and the system rules that they contain:

  • The RLE:RunTag form has a system rule for the LIVE RunTag.
  • The RLE:RuleSetType form has two system data rules: one for CONNECTION jobs and the other one for COMPLIANCE jobs.
  • The RLE:RuleSet, RLE:GetRuleJoin, RLE:UpdateRuleJoin, and RLE:LoopRuleJoin forms have two rulesets called GetScope and CommitData. These are used to process connection rules for all rules.
  • Several other RLE forms are also installed with all the default license types that are shipped with the BMC Helix ITSM: Asset Managementapplication. Do not modify any of this data in these forms. Only modify or delete license types using the license type wizard.


To debug license types, try some of the following steps in the following sections:

If a license type is not running

Ensure that the license type is enabled as described in Managing-license-types-and-related-license-certificates.

If the right CIs are not connected to a certificate

  • Examine your connection rules to confirm the following points:
    • If you are using the basic model, you have the correct questions mapped to the CMDB classes/fields.
    • If you are using the advanced model, you have the correct fields mapped to the CMDB fields.
  • The following is the sequence of operations that occur when a connection job is run. To track the sequence of these operations in the arjavaplugin.log log turn on debugging as described in Configuring-the-license-engine
    • A scope list is updated in a back-end table called AST:LicenseScopeTable, based on the equal parameter defined for the job.
    • The system gets the certificates for the license type.
    • For every certificate, the system gets the matching CIs.
    • The system updates the scope list with the CIs that have matching certificates.
    • The system performs further operations on the scope table, for example, CIs get related to certificates, exception data gets processed, and so on.

If compliance actions are not working correctly

  • Ensure that all of the actions are in the right sequence because the results of previous actions can be used in subsequent actions.
  • Ensure that each action has the correct WHERE qualifiers, so that the right set of data is returned.


 

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