Enabling the Action Service
The Action Service can only be enabled per tenant.
Configuring Redis for Action Service
To configure Redis for the Action Service, you have to open appsettings.json in the Action Service and enter the following:
"RedisConnectionString": "<Redis_Server>:<Port_Number>"
"RedisSettings": {
"ExpirationTimespan": "0.00:15:00",
"ConnectionString": "<Redis_Server>:<Port_Number>,password=<PasswordOfRedisServer>,abortConnect=false"
}
For example :
"RedisConnectionString": "host.docker.internal:6379"
"RedisSettings": {
"ExpirationTimespan": "0.00:15:00",
"ConnectionString": "host.docker.internal:6379,password=Password@123,abortConnect=false"
}
A Redis server is required for the Action Service. For more details on installing Redis manually, refer Setting up Redis.
Enabling Action Service
•Set the EnableActionService option in Global Constants as True.
•Ensure the ActionServiceUsage option is Disabled in the Central Config. By default it is Disabled.
•Set the DisableDirectActionServiceUsage option as Unconditionally ON in the Central Config.
Verifying the functioning of Action Service
1.Login to a Neurons for ITSM tenant.
2.Navigate to the Incident workspace and open an existing Incident.
3.Open the chrome console > Network > Headers.
4.Execute a converted quick action. For example, OOTB > More > Form Actions > Assigned Incident to Me.
5.Verify if the below endpoint is being called.
Troubleshooting
Problem
After Upgrading, the Action Service is not working when the installation is using Windows Authentication Option.
Resolution
1.Check IIS settings > Application Pool > HeatActionServicePool.
2.Check Identity Column to ensure the Identify Property has the same value as all other services.
Feature Management
•ActionServiceUsage feature is disabled by default. All non-complex type of actions will be executed within AppServer.
•ActionServiceUsage needs to be set as Unconditionally ON. All non-Deprecated actions will be exectued within ActionService.
• DisableDirectActionServiceUsage can be set as Unconditionally ON to disable directly calling the Action Service, returning to the old approach of calling the ActionServiceClient through the Save.asmx service.
Do not use this unless you have issues on CoreVM or local.
Condition | Endpoint |
---|---|
Feature flag does not exist in . | ActionService/ExecuteAction |
Feature flag exists in ConfigDB but is not used in Feature Management. (Treated as system wide Unconditionally ON). | Services/Save.asmx/ExecuteAction |
Feature flag is set as Disabled. | ActionService/ExecuteAction |
Feature flag is set as TrialPeriod | ActionService/ExecuteAction |
Feature flag is set as TrialCompleted | Services/Save.asmx/ExecuteAction |
Feature flag is set as Unconditionally ON | Services/Save.asmx/ExecuteAction |
On-premise Configuration
ActionServiceUsage Tenant Feature Management should be set to Disabled for OnPremise environment, until the FrameworkActionsRunner has been deployed.
Services | Settings | Notes |
---|---|---|
Action Service | ISM_RedisConnectionString | Connection String to Redis deployed on the environment. This should be the same as other applications, Example, localhost:6379,abortConnect=false |
AppServerUri | URI to AppServer deployed on the environment. This should be the same as other applications. Example, http://{hostName}:{portNumber}/HEAT | |
MessageQueueServiceUri | URI to message queue service deployed on the environment. This should be the same as other applications . Example, http://{hostName}:{portNumber} | |
InventoryServiceUri | URI to inventory service uri deployed on the environment. This should be the same as other applications. Example, http://{hostName}:{portNumber} | |
ConfigServiceClientUri | URI to CentralConfig deployed on the environment. This should be the same as other applications. Example, http://{hostName}:{portNumber}/CentralConfig | |
ConfigServiceClientName | CentralConfig client name. This should be the same as other applications. Example, api/centralconfig | |
SaaSAppServerBaseURL | URI for SaaS AppServer Base URL deployed on the environment. This should be the same as other applications. Example, http://{hostName}:{portNumber}/HEAT | |
WorkflowServiceUri | URI for the workflow service deployed on the environment. This should be the same as other applications. Example, http://{hostName}:{portNumber}/HEAT | |
SaaSBaseURI | URI for SaaS Base Uri This should be the same as other applications e.g. http://{hostName}:{portNumber}/HEAT | |
ISimpleSecretStorageStrategy |
Copy
{
|
|
central-config-api-key | The central config API key used to validate API calls in the config service. | |
AppServer.Core | appsettings.json ActionServiceUri web.config ActionServiceUri |
http://{hostName}:{portNumber}/ActionService/ActionService /ActionService/ActionService is required to be duplicated. The first part denotes the application name hosted in IIS, the second denotes the endpoint prefix in the service itself. |
Email.Core | ActionServiceUri |
http://{hostName}:{portNumber}/ActionService/ActionService /ActionService/ActionService is required to be duplicated. The first part denotes the application name hosted in IIS, the second denotes the endpoint prefix in the service itself. |
WorkflowService.Core | ActionServiceUri |
http://{hostName}:{portNumber}/ActionService/ActionService /ActionService/ActionService is required to be duplicated. The first part denotes the application name hosted in IIS, the second denotes the endpoint prefix in the service itself. |
MetricsService | ActionServiceUri |
http://{hostName}:{portNumber}/ActionService/ActionService /ActionService/ActionService is required to be duplicated. The first part denotes the application name hosted in IIS, the second denotes the endpoint prefix in the service itself. |