Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The outage of an Agent will stop the execution of workflows with that Agent. Workflows running with Agents that remain available are unaffected.
  • Workflows that miss their scheduled execution date will be executed when the Agent becomes available.

Controller Behavior

  • The Controller is used at design-time to deploy workflows and to submit orders to Agents. At run-time the Controller receives information about execution results and order state transitions from Agents.
  • If an Agent becomes unavailable then
    • the Controller will try to reconnect to the respective Agent.
    • the Controller reports the missing Agent connection to the JOC Cockpit.
  • When the connection to the Agent is re-established then the Controller continues receipt of execution results and order state transitions.

JOC Cockpit Behavior

  • JOC Cockpit receives information about Agents from a Controller. There is no direct connection to an Agent.
  • In case of outage of an Agent
    • the Controller reports the information to JOC Cockpit that will display the missing Agent connection with its Dashboard.
    • any interaction with an Agent such as deployment of workflows or requests for submission/cancellation of orders to that Agent are delayed. The Controller accepts such requests and will forward them to the Agent when the Agent becomes available. It is therefore not required to repeat such requests as they are promised to be executed on availability of an Agent.

Agent Behavior

  • Testing by SOS includes to perform successful tests for the scenario when an Agent becomes unavailable for 24 hours. The test includes to move the Agent's journal files to a new Agent and to modify the Agent registration with JOC Cockpit. Then the new Agent executes the outstanding workflows from the previous day and any newly added orders.

Troubleshooting

The Agent The agent is the component in JS7 that executes the workflow and , stores all the information in the form of journals and pass the information about execution results and order state transitions in its journal and passes results to the Controller. The outage of the agent affects the an Agent prevents execution of the workflows. The workflow will not be executed if the agent is not available. But will execute all the outstanding orders whenever the agent is available.

An Agent The agent outage can be handled either by resolving the issue with the current agent (Agent, e.g. by restarting) , or by moving relocating the ./state directory to the running agenta different Agent. The journals for the agent are journal of the Agent is stored in the ./state directory. So if we want the To relocate workflow execution of one agent to be forwarded to another agent then we need to another Agent copy the journals of the unavailable agent to another agent.journal to the target Agent.

Relocating the Agent's Journal

If Agent1 is facing an outage and Agent2 So, if agent1 is facing the outage and the agent2 is running (on the same server or another on a different server) then follow the below steps to forward the execution of orders from agent1 to agent2:relocate the Agent's journal from Agent1 to Agent2:

  1. Shutdown Agent2 Shutdown the services of agent2
  2. Copy the files from the the ./state folder of agent1 Agent1 to the state respective folder of agent2Agent2
  3. Start the services of agent2 Agent2
  4. Consider that the Agent If the agent URL is not the same for agent2 then the orders will be automatically started. But if the agent URL is changed then it Agent1 and Agent2.  Therefore the URL has to be updated in the JOC Cockpit.
  5. To change the agent Agent URL, login to the JOC Cockpit.
  6. From the profile main menu select the item "Manage Controllers/Agents".
  7. Make sure you edit the existing agent Agent1 which is not in service as if we add a new agent then all the workflows need to be updated with the new Agent. So, edit the agent which is not available due to the outage.
  8. Change the agent1 Agent1 URL to point to the agent2 Agent2 URL and click the Submit button:
  9. When workflows are confirmed to work with Agent2 then drop the contents of the ./state directory of Agent1. This an important step as otherwise Agent1 will execute the same workflows should it be started later on.



Note: If required to copy the journals from agent2 to agent1 once the agent1 is available otherwise the Controller will not be able to couple with the AgentThe SOS has performed the successful test with the scenario when the Agent was not available for 24 hours and we copied the files from the state folder of agent1 to agent2. Changed the URL in the JOC Cockpit for the Agent. Then the agent2 executed all the outstanding orders from the previous day and also the new ordersyou intend to move back execution from Agent2 to Agent1 then consider to apply the above steps respectively.