You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Introduction

JS7 collects log output created by jobs and workflows:

  • The Task Log is the log output collected from a job run.
  • The Order Log includes Task Logs of any jobs included with a workflow. In addition, it includes information about JS7 - Workflow Instructions that have been executed.

JS7 provides a Running Log that displays output in near real-time.

Log View Window

The Log View window is available for order logs and task logs

Workflows View

Consider the given workflow that implements forking/joining of parallel branches in a workflow like this:


Explanation:

  • The lower part of the screenshot displays the Order History that makes the order log available when clicking the Order ID.
  • Right to the Order History users find the Task History that displays individual tasks running for the given workflow. Clicking the job name will display the task log.
  • Both logs are similarly available from the JS7 - Order History and JS7 - Task History.
  • The size of the workflow's Order History and Task History can be changed in JS7 - Profiles - Preferences.

Order Log

For the given workflow the order log can look like this:


Explanation:

  • The top of the screen offers a number of options:
    • and will expand and collapse log output of any jobs executed for the workflow.
    • and will expand and collapse output of the selected job.
    • Main: displays/hides lines holding information start times, job names etc. that are using the [MAIN] qualifier.
    • Success: displays/hides lines holding success messages using the [SUCCESS] qualifier. Such lines use the green color.
    • stdout: displays/hides log output from jobs written to the stdout channel.
    • Debug: displays/hides log output from JVM jobs writing debug messages.
    • Detail: displays/hides details about events, for example the timestamp when an order forks and when child orders join. Such lines use the blue color.
  • On the right side of the screen users find the icon that opens the right panel:
    • The panel displays jobs and other JS7 - Workflow Instructions in historical sequence.
      • If a job fails and is repeated then it will occur a number of times 
    • and will expand and collapse the panel for nested workflow instructions.
    • Clicking a specific job or instruction in the panel will highlight the log output related to the instruction.

Task Log

For a given job the task log can look like this:


Use of checkboxes is similar to display of the Order Log.

Running Log

A Running Log represents the fact that an Order Log or Task Log is displayed for a running order or task. Any output created by the order / task is immediately made available.

The Running Log is provided in near real-time, typically with a delay of 1-2s.

  • Log output is created
    • from jobs that write to the stdout or stderr channels,
    • from events that signal processing of instructions such as a job start, forking / joining of an order etc.
  • Log output is displayed in historic sequence. If jobs are repeated then related log output is made available.
  • If jobs are running on Agents that make use of different time zones, then users can specify timestamps in log output to be converted to their time zone, see JS7 - Profiles - Preferences. Otherwise the original timestamps of the Agent processing the job or instruction will be displayed.

Availability of Logs

Streaming of Logs

Log output is made available like this:

  • Log output created by jobs running with Agents is streamed to the Controller. This prevents log files from being created in the Agent's file system.
  • Log output forwarded by Agents and log output created by the Controller are streamed to the JOC Cockpit's JS7 - History Service. The service will persist log output to temporary files and to the JS7 - Database.

Streaming makes log output available to JOC Cockpit within 1-2s.

Factors that prevent timely availability of logs include:

  • unavailability of the Controller. In this situation the Agent will store log output to its journal and will try to stream log output later on when a Connection is established by the Controller.
  • unavailability of JOC Cockpit. In this situation the Controller will store log output to its journal and will try to stream log output later on when a Connection is established by JOC Cockpit.

Completion of Logs

Task Logs are completed when the task is terminated. At that point in time the task log is persisted to the database by the History Service running in JOC Cockpit. Before completion log output of tasks is stored to temporary files in the JOC Cockpit's <JETTY_BASE>/logs/history directory.

This includes that the active JOC Cockpit instance in a cluster will receive log output only. When using a standby JOC Cockpit instance in a cluster then no Running Log is available., Instead, logs become available after completion of orders and tasks.

In a situation when we find a switch-over between an active and a standby JOC Cockpit instance, the order logs and task logs are zipped to the database and are removed from disk by the previously active JOC Cockpit instance. The newly active JOC Cockpit instance will unzip related logs and will store them with JOC Cockpit's file system.







  • No labels