Versions Compared

Key

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

Table of Contents

Introduction

  • 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.
  • Testing by SOS includes to perform 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 after the 24 hours outage and to modify the Agent registration with JOC Cockpit. Then the new Agent executes any outstanding workflows of the previous day and any newly added orders.Relevant information is also available in the JS7 - Impact of an Agent outage article.
  • For information about the behavior in case of outages see see the JS7 - FAQ - What happens to workflows in case of outage of an Agent? article.

Troubleshooting

The JS7 Agent is the component in JS7 that executes the workflowexecutes workflows, stores information about execution results and order state transitions in its journal and passes results to the Controller. The outage of an Agent prevents the execution of workflows.

Troubleshooting starts from the fact that users reproduce and locate a problem in order to better know the nature of the problem:

  • As a first step check the Agent's log file agent.log and watchdog.log, see JS7 - Log Files and Locations.
    • Warnings and errors can be found from the output qualifiers WARN and ERROR in a log file.
    • Example
      • 2021-10-10T09:53:04,939 WARN js7.base.session.SessionApi - HttpAgentApi(https://apmacwin:4345): HTTP 401 Unauthorized: POST https://apmacwin:4344/controller/api/session => InvalidLogin: Login: unknown user or invalid password
  • Due to log rotation, log files from previous days are available in a compressed .gz format on a daily basis, see the JS7 - Log Rotation article for details.
    • For Unix the zcat command can be used to directly access compressed log files.
    • For Windows compressed files have to be extracted, for example using 7-zip.
  • Note that an Agent instance can report problems related to other products such as Controller instances and the JOC Cockpit. In this situation it is recommended that the product's log files are also checked.
  • Should warnings or error messages not be evident then users should do some research: the Product Knowledge Base and the Change Management System offer a search box, browsers offer access to search engines.
  • Having completed analysis of a problem and being certain that the problem is related to a product defect and not to resources of the IT environment then:
  • Should the agent.log file not provide sufficient information to reproduce a problem then users should consider increasing the log level, as described in the JS7 - Log Levels and Debug Options article.

In some situations, for example if computer memory is not sufficient for the heap size of the Agent's Java Virtual Machine, the outage of an Agent instance can be handled by restarting the instance. However, problems indicating insufficient resources typically require better sizing of resources.

If the problem is related to server resources and if operation of the Agent cannot be continued on the same server then relocation of the Agent instance can be a last means to fight an outage. Relocation includes copying/moving the Agent instance's JS7_AGENT_DATA/state directory to an Agent instance on a new server. This directory holds the Agent instance's journal. To relocate an Agent instance, the journal files can be copied to the new Agent instance. Refer to the JS7 - How to relocate an Agent article for the steps to applyAn Agent outage can be handled either by resolving the issue with the current Agent, e.g. by restarting or by relocating the ./state directory to a different Agent provided that access to the same scripts and programs is available that should be executed. The journal of the Agent is stored in the ./state directory. To relocate the journal to a different Agent copy the journal files to the target Agent. Refer to the article Relocating Agent's Journal for the steps on how the agent can be relocated.