Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: JOCC InfoBox updated
Info
titleThis article only applies to the Classic JOC Interface

The Classic JOC user interface is entering retirement:

Display feature availability
EndingWithRelease1.11

The JOC Cockpit user interface replaces the Classic JOC interface:

Display feature availability
StartingFromRelease1.11

See the JOC Cockpit - Features Article as a starting point for links to articles about configuring the JOC Cockpit.

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

JobScheduler Operations Center

The JobScheduler Operations Center (JOC) is used to monitor and control the jobs, job chains and orders.
You open JOC in a browser with the URL:

Code Block
  http://[scheduler_host]:[scheduler_port] (e.g. http://localhost:4444) 

where scheduler_host and scheduler_port are the hostname and the TCP port number of the JobScheduler.

Configuration via custom.js

The configuration file custom.js for the operationsGui JOC is stored in the ./config/operations_gui directory beside the ./config directory.

For release releases < 1.3.9 you find the custom.js in the ./config/html directory.

In the custom.js are some variables which are defaults when the site is loaded but can be overwritten via cookies.

The custom.js of version 1.3.9 contains the following variables:

...

Cookie Behavior

Possible values are true and false.

If false then almost all following variables are stored in cookies, so that these settings are only default values and will be overwritten via the cookies.

If true then only filters are read from cookies whereat the defined correspondent filters in this file have priority.

Code Block

 _disable_cookie_settings = false;

...

Language

Set the interface language.
A language file scheduler_lang_sos__soslang.js_ (i.e. scheduler_lang_ru.js for Russian) must exist.

The language files are stored in the ./operations_gui directory beside the ./bin directory.

For releases < 1.3.9 you will find the language files in the ./config/html directory.

If this value is empty then no language file is tried to include and english files are included and English is used.

At this time the time of writing (December 2014) 'de' (germanGerman), 'fr' (frenchFrench) , and 'ru' (russian) and 'es' (spanish) is supported.

...

Russian) are supported.

Code Block
 _sos_lang                = '';

If you want a user-defined language setting then check the example below.

Automatically Refresh

Possible values are true and false.
If true then the periodical page refresh is active.

Code Block
 _update_periodically     = false;

Interval between the periodical page refresh in seconds.

Code Block
 _update_seconds          = 5;

Views

You can switch between the tabs 'jobs', 'job_chains', 'process_classes' and 'last_activities' as the starting view.

Code Block
 _show_card               = 'jobs';

For some tabs you can set the default view mode (list or tree).

Code Block
 _view.jobs               = 'list';
 _view.job_chains         = 'list';

Checkboxes, Radios and Selectboxes

You can specify which checkboxes are checked (true) or unchecked (false).

Code Block
 _checkbox_states.show_tasks_checkbox            = true;
 _checkbox_states.show_job_chain_orders_checkbox = true;
 _checkbox_states.show_job_chain_jobs_checkbox   = false;
 _checkbox_states.show_order_history_checkbox    = false;
 _checkbox_states.show_task_error_checkbox       = false;
 _checkbox_states.show_error_checkbox            = false;

You can specify the value of some radio buttons.

The possible values for last_activities_radios are 'all', 'orders' and 'tasks'.

Code Block
 _radio_states.last_activities_radios = 'all';

You can specify the values of some selectboxes.

The possible values for show_jobs_select are 'all', 'standalone' and 'order'.

The possible values for jobs_state_select are 'all', 'running', 'stopped', 'running_or_stopped' and 'other'.

Code Block
 _select_states.show_jobs_select      = 'all';
 _select_states.jobs_state_select     = 'all';

Number of Displayed Orders or Tasks

You can limit the number of orders that are displayed for job chains if the checkbox show orders is checked.

Code Block
 _max_orders              = 10;

You can limit the number of orders and tasks that are displayed in the last activities tab.

Code Block
 _max_last_activities     = 30;

Number of History Entries

Per default the last 50 entries are displayed from the order history and the last 10 entries from the task history respectively.

Code Block
 _max_order_history       = 50;
 _max_task_history        = 10;

Timeout for Terminate

In the top menu you find an item terminated with timeout. Here you set the timeout in seconds.

Code Block
 _terminate_timeout       = 60;

Default for 'Start at'

In start task/order dialogs the start time can be set to equal now per default. You can omit this.

Code Block
 _start_at_default_is_now = true;

Start Task Unforced Now

Enables the additional job menu item Start task unforced now.

Code Block
 _start_next_period_enabled  = false;

Debug Level

Possible values are 0-9.

A new window will open to write the debug information. A pop-up blocker should allow this.

Code Block
 _debug_level             = 0;

Additional URLs In Extras Menu

You can add arbitrary URLs to the pop-up menu of the Extras button in the form:

Code Block
 _extra_urls[ 'display name' ] = 'url';

For an example see below.

Aliases

You can set an URL mapping for the remote JobSchedulers if e.g. an Apache proxy configuration is used.

For more information about proxy configuration see How to operate JOC with an Apache Proxy.

Set an alias like this:

Code Block
 _url_aliase[ 'remote_host:remote_port' ] = 'url';

Timezones

JOC display all timestamps in the local time of that host where you open the browser.

Since JobScheduler Release 1.8 a selectbox can used to switch between different timezones.

You can add timezones in the form:

Code Block
_timezones[ 'display name' ] = 'timezone';

See here the supported time zones in JOC.

Example:

Code Block
_timezones[ 'my company in Berlin' ] = 'Europe/Berlin';

 

With the variable _timezone_preselected you can set the time zone which is used when JOC starts.

Here you can use one of the keys from the above specified time zones. Further there are the keys 'local' for the local time of the browser and 'JobScheduler' for the time zone in which the JobScheduler works.

Code Block
_timezone_preselected = 'my company in Berlin';

 

Hide some function or force a confirm

This feature is available since JobScheduler Release 1.8

In JOC you see functions e.g for start a job or an order etc. (see JOC - Basic Functions List).

Some of these function can be hidden or you can force a confirm before the execution.

Code Block
_hide.terminate_jobscheduler = false;
_hide.pause_jobscheduler     = false;
_hide.continue_jobscheduler  = false;
_hide.restart_jobscheduler   = false;
_hide.stop_job_chain         = false;
_hide.unstop_job_chain       = false;
_hide.stop_job_chain_node    = false;
_hide.unstop_job_chain_node  = false;
_hide.skip_job_chain_node    = false;
_hide.unskip_job_chain_node  = false;
_hide.start_job              = false;
_hide.stop_job               = false;
_hide.unstop_job             = false;
_hide.set_job_run_time       = false;
_hide.kill_running_task      = false;
_hide.remove_enqueued_task   = false;
_hide.end_or_continue_or_suspend_tasks_of_api_job = true;
_hide.end_task_of_api_job    = true;
_hide.start_order            = false;
_hide.add_order              = false;
_hide.reset_order            = false;
_hide.set_order_state        = false;
_hide.suspend_order          = false;
_hide.resume_order           = false;
_hide.remove_order           = false;
_hide.remove_blacklist_order = false;
_hide.remove_setback         = false;
_hide.set_order_run_time     = false;
_hide.add_schedule           = false;
_hide.modify_schedule        = false;
Code Block
_confirm.terminate_jobscheduler = false;
_confirm.pause_jobscheduler     = false;
_confirm.continue_jobscheduler  = false;
_confirm.restart_jobscheduler   = false;
_confirm.stop_job_chain         = false;
_confirm.unstop_job_chain       = false;
_confirm.stop_job_chain_node    = false;
_confirm.unstop_job_chain_node  = false;
_confirm.skip_job_chain_node    = false;
_confirm.unskip_job_chain_node  = false;
_confirm.start_job              = false;
_confirm.stop_job               = false;
_confirm.unstop_job             = false;
_confirm.set_job_run_time       = false;
_confirm.kill_running_task      = false;
_confirm.remove_enqueued_task   = true;
_confirm.end_or_continue_or_suspend_tasks_of_api_job = false;
_confirm.end_task_of_api_job    = false;
_confirm.start_order            = false;
_confirm.add_order              = false;
_confirm.reset_order            = false;
_confirm.set_order_state        = false;
_confirm.suspend_order          = false;
_confirm.resume_order           = false;
_confirm.remove_order           = true;
_confirm.remove_blacklist_order = false;
_confirm.remove_setback         = false;
_confirm.set_order_run_time     = false;
_confirm.add_schedule           = false;
_confirm.modify_schedule        = false;

Filters

For more information see How to store filters persistently that would not disappear after cleanup of cookies.

You can set filters for jobs, job chains and orders like this:

Code Block
 _job_filter[ 'filter name' ]       = 'regular expression';
 _job_chain_filter[ 'filter name' ] = 'regular expression';
 _order_filter[ 'filter name' ]     = 'regular expression';

or use

Code Block
 _project_filter[ 'filter name' ]   = 'regular expression';

which is effective for jobs, job chains and orders simultaneously.

A selectbox will be displayed with the filter names.
To specify which selectbox option is selected you can use

Code Block
 _active_job_filter                 = 'name of the filter';
 _active_job_chain_filter           = 'name of the filter';
 _active_order_filter               = 'name of the filter';

or

Code Block
 _active_project_filter             = 'name of the filter';

User-defined Configuration via my_custom.js

While the configuration file custom.js (see above) for JOC is always processed, you can create an additional configuration file, i.e. my_custom.js, to overwrite the settings from custom.js.

The file my_custom.js is processed when you type the URL:

Code Block
 http://[scheduler_host]:[scheduler_port]/index.html#my_custom 

The name of the user-defined configuration file is arbitrary and has to be stored in the same directory as custom.js.
You can add multiple files as given in the following example 1.

Example 1

The language of JOC is per default English, however, some users want JOC in, for example, Russian or in French.
Create the file ru.js with the content:

Code Block
 _sos_lang  = 'ru';

and create the file fr.js with the content:

Code Block
 _sos_lang = 'fr';

After this JOC will display text in Russian if you type:

Code Block
 http://[scheduler_host]:[scheduler_port]/index.html#ru

or:

Code Block
 http://[scheduler_host]:[scheduler_port]/#ru) 

and in French if you type:

Code Block
 http://[scheduler_host]:[scheduler_port]/index.html#fr

or:

Code Block
 http://[scheduler_host]:[scheduler_port]/#fr. 

You can extend the example by using _extra_urls (see Example 2 below).

Example 2

After completing Example 1 above, add the following to the custom.js file:

Code Block
 _extra_urls['english']  = 'http://[scheduler_host]:[scheduler_port]/index.html';
 _extra_urls['russian']  = 'http://[scheduler_host]:[scheduler_port]/index.html#ru';
 _extra_urls['french']   = 'http://[scheduler_host]:[scheduler_port]/index.html#fr';

If you now call JOC, you will find links for selecting the language in the right top Extras menu.

FAQs

See also: