Skip to end of metadata
Go to start of metadata

Introduction

Any time zone names are specified according to the List of tz database time zones.

JS7 supports time zones at a number of levels:

  • JS7 Components
    • JOC Cockpit, Controller and Agents can be operated in different time zones. Time zones are preset by the respective operating system.
    • This includes to run a number of Agents in different time zones.
  • Scheduling Objects
    • Orders are scheduled for a point in time calculated for the given time zone by the orders' JS7 - Schedules.
    • Jobs consider the time zone of their workflow to calculate JS7 - Admission Times for Jobs.
    • The JS7 - Daily Plan considers the Daily Plan time zone. A Daily Plan does not necessarily have to span midnight to midnight, instead the Daily Plan can use any hour of the day as the starting point for its 24 hours period.
      • The start of the Daily Plan period and the point in time when the Daily Plan is calculated are both considering the Daily Plan's time zone.
      • Cyclic workflows that make use of the JS7 - Cycle Instruction consider the Daily Plan time zone.
  • Graphical User Interface (GUI)
    • Any dates and times that become visible with the GUI are converted to the time zone specified with the user's profile.
      • This applies to order start dates, job admission times, any entries of the JS7 - History etc.
      • This applies to timestamps of order logs and task logs that are executed on Agents in different time zones. Users can choose with their user profile settings if they prefer to be presented original timestamps of logs or if they prefer to have timestamps converted to the time zone specified with the user profile.
    • When adding orders by the GUI then the time zone of the order's start date is specified.
    • When posting notices to JS7 - Notice Boards then the time zone for the notice's lifetime is specified.
    • Any time zones applied by the GUI are by default populated from the user profile's time zone setting and can be modified by the user.

Time zone changes include that

  • time zones can change for individual countries due to government's decisions. The same applies to the date and time of daylight saving change,
  • such changes can occur at short notice and therefore might not be reflected with a time zone database that ships with an earlier JS7 release.
  • Consider to update JS7 at a regular basis in order to receive up-to-date time zone databases.

JS7 Components

The JS7 Controller, Agent and JOC Cockpit by default use the time zone specified by the operating system.

Controller

The Controller does not use any time zone specification except for the time zone reported by the operating system.

  • The Controller forwards dates to JOC Cockpit in UTC time and in case of order state transitions with Agents adds the Agent's time zone if applicable.
  • The timestamps of entries in the Controller's log files are determined from the operating system time zone. This can be modified with the Log4j2 configuration file, see JS7 - Log Rotation.

Agent

The Agent makes use of the time zone reported by the operating system:

  • The timestamps of entries in the Agent's log files are determined from the operating system time zone. This can be modified with the Log4j2 configuration file, see JS7 - Log Rotation.

The Agent start script provide global arguments and environment variables that can be used in Shell jobs:

  • JS7_AGENT_TZ indicates the Agent's time zone.
  • JS7_SCHEDULED_DATE indicates the date an order is scheduled for and includes the offset of the Agent's time zone to UTC, e.g. 2020-12-03 09:13:59+0100.
  • JS7_SCHEDULED_YEAR, JS7_SCHEDULED_MONTH, JS7_SCHEDULED_DAY, JS7_SCHEDULED_HOUR, JS7_SCHEDULED_MINUTE, JS7_SCHEDULED_SECOND are indicated in the Agent's time zone.
  • JS7_JOBSTART_DATE indicates the date a job is started in the Agent's time zone and includes the offset of the Agent's time zone to UTC e.g. 2020-12-03 09:13:59+0100.
  • JS7_JOBSTART_YEAR, JS7_JOBSTART_MONTH, JS7_JOBSTART_DAY, JS7_JOBSTART_HOUR, JS7_JOBSTART_MINUTE, JS7_JOBSTART_SECOND are indicated in the Agent's time zone.

Note:

  • Consider that the offset of the Agent's time zone to UTC can change during Daylight Saving Change. The offset to UTC indicated by the above environment variables is calculated at the point in time when a job starts. Jobs that are sensible to Daylight Saving Change should consider that such changes can occur during job execution.

JOC Cockpit

The JOC Cockpit makes no use of the time zone reported by the operating system for the following purposes:

  • JOC Cockpit switches its Java Virtual Machine to the UTC time zone. This behavior is required to guarantee consistent database transactions.
  • JOC Cockpit Web Services perform any date calculation in the UTC time zone.

JOC Cockpit by default makes use of the operating system time zone when writing timestamps to log files. Users can modify the time zone for log timestamps, see JS7 - Log Rotation.

Time Zone Support by Scheduling Objects

Workflows

Workflows are specified with a time zone that is used to calculate JS7 - Admission Times for Jobs:


The time zone setting is applied to Admission Times of jobs in the workflow:

Timed Orders from Schedules

When using JS7 - Schedules to create orders then the schedule is specified with a time zone that by default is populated from the user profile's time zone.

Ad hoc Orders from User Intervention

When manually adding orders to a workflow for a later date then the time zone is specified like this:


Note: If the option "Now" is used then the order starts immediately independently from the user's time zone setting. 

Daily Plan Service

The Daily Plan Settings consider a time zone for the start of the 24 hours period of the Daily Plan and for the point in time when the Daily Plan is calculated, see JS7 - Daily Plan Service.

Cleanup Service

The JS7 - Cleanup Service purges older entries in the database. Settings for the Cleanup Service use a time zone specification like this:


Time Zone Support by the Graphical User Interface

User Profile

The user profile by default is populated with the browser's time zone setting. Users are free to choose a different time zone. Any dates visible with JOC Cockpit are converted to the user profile's time zone.


Note:

  • Changes to the user profile's time zone do not modify the time zones specified with scheduling objects. Instead, such changes are used to convert any visible dates to the user profile's time zone.

For example, when modifying the original time zone from Europe/Berlin to America/Sao_Paulo then dates such as the system time are moved 5 hours back during European summer time.

Dashboard

The JS7 - Dashboard makes use of the user profile's time zone setting for any areas related to dates:


Note:

  • The system time is converted to the user's current time zone.
  • The widgets for current Orders, for the History and for the Daily Plan calculate their date range based on the user's current time zone.
  • The start times of Controller instances are converted to the user's current time zone.

Orders Overview

The date range for selection of orders in this view consider the user's current time zone setting:


Daily Plan View

The JS7 - Daily Plan converts planned start times according to the user's current time zone setting:


Note:

  • If the JS7 - Daily Plan Service is configured for a 24 hour period that does not start at midnight of the user's current time zone, then orders for a Daily Plan date selected from the calendar widget might be displayed with planned start dates for the previous or for the next day. Users who consider this to be confusing should align their time zone with the Daily Plan Service's time zone.



  • No labels
Write a comment…