How Can We Help?

This section describes the Topology API for adding customized Categories and Components in HEAL.

Category

KPIs having a similar impact on the performance of the system are tagged together as a Category. Forensic actions can be in general mapped to a category.

API Name – categories

Format – POST  /api/accounts/< account_identifier >/categories

JSON Format

{ “name”: “<Name of category>”, “identifier”: “<identifier of category>”, “description”:”<description of category>”, “subType”:”<category sub-type>”, “workLoad”: “<Flag to specify the category is for Workload or Behavior KPI>”, “status”: “<status of category>”}

Input Parameters

NameDescriptionConstraintsMandatory/Optional
NameName of the categoryIt must be unique across the account. It can be up to a maximum of 64 characters.Mandatory
IdentifierIdentifier of the category. If the identifier is not specified by the user, API creates the identifier.It should be unique across the account. It can be upto maximum 64 characters.Optional
workLoadWorkload KPIs can be either transaction or component KPIs. This attribute defines whether the category is of type workload or behavior. For a workload category, value needs to be “true”. Default value is “false”.It is a Boolean. It should be either true or false.Optional
descriptionThis describes the category.Optional
subTypeSub-type of the categoryIt should be Info or Non-info.Mandatory
statusStatus of the category. It can enabled or disabled. If enabled, category is visible in HEAL UI else category is invisible in UI.It should be 1 or 0. Default value is 1.Optional

Sample JSON

Following JSON generates a Category named DB_ERRORS.

{ “name”: “DB_ERRORS” “identifier”: “3aa82ecf-ea46-4c19-9abe-fa23ebe241b9”, “workLoad”: true, “description”: “DB category”, “subType”: “Non-info”,”status”:1 }

Success Rest Response

{ “message”: “Created Successfully”, “responseStatus”: “SUCCESS”, “data”: 12 }

Failure Rest Response

{ “message”: “Category already exists.”, “responseStatus”: “FAILURE” }

Component

A component is a software element that runs on the host server. HEAL’s components allows you to create customized Components to suit your environment.

API Name: components

Format: POST  /api/accounts/<account_identifier>/components

JSON Format

{ “componentName”: “<Name of the component>”, “type”: “<Type of the component>”, “commonVersion”: “< Common version for the component>”, “version”: “< Component version>”, “description”:”< Component description>”, “attributes”: [, { “name”: “<Attribute name>”, “type”: “<Attribute type>”, “defaultValue”: “<Attribute default value>”, “mandatory”: “<Attribute mandatory or optional>”, “maxLength”: “<Maximum length of attribute value>”, “minLength”: “<Minimum length of attribute value>” }] }

Input Parameters

NameDescriptionDefault ValuePredefined ValuesMandatoryMore Info
componentNameName of the componentYes
typeType of the component“Host”, “Web Server”, “Application Server”, “Database Server”, “Services”, “Workload”Yes
commonVersionCommon major Version for the componentYes
versionThe current version of the componentYes
descriptionDescription for the component addedYes
Object – attributes
nameName of the attributeYes
typeType of the attributeTextBox, PasswordYes
defaultValueThe default value for the attributeYes
mandatorySpecifies whether the attribute is mandatory for the component falsefalse, trueYes
maxLengthThe maximum length of the attribute valueNo
minLengthMinimum length of the attribute valueNo

Sample JSON

Sample JSON to create a new component named Booking Component is as follows:

{ “componentName”: “BookingComponent”, “type”: “Application Server”, “commonVersion”: “1.x”, “version”: “1.1”, “description”: “Component that is customised for booking hotel and flights”, “attributes”: [{ “name”: “HostAddress”, “type”: “TextBox”, “defaultValue”: “”, “mandatory”: “true”, “maxLength”: “64”, “minLength”: “10” }, { “name”: “MonitorPort”, “type”: “TextBox”, “defaultValue”: “”, “mandatory”: “true”, “maxLength”: “8”, “minLength”: “3” } ] }

Success Rest Response

{ “message”: “Created successfully.”, “responseStatus”: “SUCCESS”, “data”: { “id”: 26, “name”: “BookingComponent” } }

Failure Rest Response

Failure message when the ‘type’ parameter was removed from the sample JSON

{ “message”: “Invalid request”, “responseStatus”: “FAILURE”, }

Table of Contents