Module Name:

global.properties

Description:

Sets global properties for the application

Why to Use?

To override default values and to set global variables

Where to Use?

In the global.properties file in the root dir of the region

Config Example

Screendump:

na

Outcome(s):

Updated behavior of the system

Remark(s):

Use with caution

Available since:

DelftFEWS200701

Overview

The global.properties file has two main uses:

  1. Define global variables that can be used within the (XML) configuration files to enhance portability over various machines (see also page Global Properties)
    1. if you define NAME_OFPROGRAM=c:\Myexe.exe in the global.properties file you can use the variable $NAME_OFPROGRAM$ in the configuration files
    2. if you specify folder IMPORT_FOLDER=<server>/tofss/Import or IMPORT_FOLDER=d:/fews/Import, you can use the variable $IMPORT_FOLDER$ in the configuration files.
      By adjusting the content in the global.properties, you can make portability easy between a Stand-Alone and a Forecasting Shell
  2. To set software options (see Configuration table below).

Known issues

  1. all options are case sensitive
  2. deprecated/obsolete properties not to be used anymore:
    1. identifier
    2. timeSeriesDefaultCacheSizeMB
    3. timeSeriesTaskRunCacheSizeMB
    4. docking (obsolete since 2014.02)
    5. doCaseConsistencyCheckOnMc (obsolete since 2017.02)
    6. tempDir (obsolete since 2018.01)

Configuration table

A list of special global properties manipulating the system instead of variables in xml is given below (all options are case sensitive):

Name

Default

Value

Description

alwaysAllowDummyModuleInstanceRuns

false

boolean

TransformationModule is allowed to edit time series created earlier in the same workflow, the TransformationModule can create simulated time series for any ModuleInstanceId and this can create unexpected behaviour when making runs current, this can mess up the branching information of other workflows

alwaysAllowWriteSimulatedBelongingToAlreadyRunnedModuleInstance

false

boolean

General adapter import activities time series sets should have the same ModuleInstance as the general adapter

BUFR_TABLES$REGION_HOME$/modules/bufrstringSee BUFR documentation

checkFileWillExistOnCaseSensitiveFileSystem

false

boolean

if configuration runs on Linux, this needs to be true. Only relevant when you use both Linux and Windows

COUNTRY / LANGUAGE / VARIANT

empty string

string

E.g. COUNTRY=AU, LANGUAGE=EN, VARIANT=BOM

COUNTRY /LANGUAGE / VARIANT selects the language files that are used in the user interface

LANGUAGE default is english. Other supported languages:

  • Dutch (nl)
  • German (de)
  • Spanish (es)
  • Chinese (LANGUAGE=zh, COUNTRY=CN)
  • Chinese / Taiwan (LANGUAGE=zh, COUNTRY=TW)
  • Indonesian (in)
  • Vietnamese (LANGUAGE=vi or LANGUAGE=vn)


DEFAULT_EXPIRY_DAYS

30 days

Any number of days

Sets the default expiry time for timeseries in the database. You can override this when storing individual timeseries by specifying the expirytime in the timeseriesSet

DEFAULT_EXPIRY_DAYS_LOGEVENT


Any number of days

Sets the default expiry time for logevents in the database.

DEFAULT_EXPIRY_DAYS_LOGEVENT_MANUAL


Any number of days

Sets the default expiry time for manual logevents in the database.

doCaseConsistencyCheckOnMc

false

boolean

(OBSOLETE since 2017.02)

Check new config files for case insensitive matches on the MC. Important when you use both Linux and Windows.

dockingfalse

(OBSOLETE since 2014.02)

Determines whether displays can be docked

GA_shiftExternalTimesToYear2000

false

boolean

This setting is used to export data from the General Adapter always starting in the year 2000. True means this setting is used. This overcomes the issue with running FEWS after the year 10.000 which caused problems. Internally the dates are handled normally.

JdbcServerPort

2000

integer

IP port number on which the JDBC server will listen after startup

localDatastoreFormat

firebird

firebird; derby

(OBSOLETE since 2016.02, please use clientConfig.xml)

Use firebird for the local datastore (instead of msaccess). Useful if you have large (> 2GB) datastores. When using firebird the localDataStore should be located at the physical hard disk and not at the network. You can also select derby for the LDS.

localDataStorePoolDir


any local directory

Sets the dir where a pool of max. 10 localdatastore directories is stored to be used by OC at Citrix like systems. Useful in case of using firebird as localdatastoreformat, which requires the localdatastore to be at the physical disk drive (not at the network!).
For example: localDataStorePoolDir=C:/FewsLocalDataStores
>> creates C:\FewsLocalDataStores\<Region>\localDataStore0, ...1, ...2 etc

mapLayersCacheDir


any local directory

Local directory to keep an up-to-date cache of maplayers which are retrieved from a network drive. Allows central maintenance of MapLayer-files without storage in the central database.

maxConfigFileSizeMB

unlimited

real

Maximum size of configuration files that can be imported into the localDataStore using the ConfigManager

PI_SCHEMALOCATION

http://fews.wldelft.nl/schemas/version1.0/pi-schemas/


If you do not want to use the Deltares schema location server, only used when FEWS writes xml files

readCompleteBranchSimulatedHistoricalWhenReadCompleteForecast

false

since 2012.01 read complete forecast only reads the current historical run instead of the complete branch

used for compatibility with version FEWS 2011.02


REPORT_HTML2PDF_PROGRAM

-

REPORT_HTML2PDF_PROGRAM=%REGION_HOME%/Modules/Reports/bin/wkhtmltopdf.exe

 See also Generate PDF from HTML report.

REPORTS_LEFTCOLMCID


MCID

Reference to MCID (e.g. MC00 or MC01) to put benchmark values in left or right column of a specific system status report

REPORTS_RIGHTCOLMCID


MCID

Reference to MCID (e.g. MC00 or MC01) to put benchmark values in left or right column of a specific system status report

runInLoopParallelProcessorCount

1

integer

Maximum nr of cores (CPU's) Delft-FEWS can use to run ensemble loops in parallel. Set to 100 to use all available cores.

SCHEMALOCATION

http://fews.wldelft.nl/schemas/version1.0/


If you do not want to use the Deltares schema location server, only used when FEWS writes xml files

tempDir (Obsolete since 2018.01)

Windows default

string

Sets the temp dir to something other than the windows default e.g. =F:/Temp.

Now always in regionhome/temp/session.

timeSeriesWriteCacheSizeMB

10 MB

50 MB

Temporary time series (synchLevel 9) are written to a temporary file when the size of the write cache is not large enough to hold them in memory. This will slow down the system. By increasing the size of the the timeseries write cache this can be avoided. In general this is only needed if you process large amounts of gridded data.

T0

-

string

Date/time to set the system time to (only available for stand-alone systems). The date/time should conform the pattern configured in the Explorer xml, or when that is not configured the default yyyy-MM-dd HH:mm:ss is used, for example : T0=2020-10-09 12:00:00

USE_CURRENT_SIMULATED_WITH_COLD_STATE_SELECTION

false

boolean

By default current simulated data of a module instance is visible during a run until the running forecast has started a new chain (i.e. selected a cold state) for that module instance. Setting this property to 'true' allows the use of a cold state selection in combination with timeseries of a current (approved) simulated forecast run

UseLenientPiTimeSeriesParser

false


makes the PITimeSeriesParser more tolerant to other data formats (e.g. 31-02)

EXPIRY_DAYS_OC_SESSION

30

Since 2023.01. By default there is only a history of OC sessions for 30 days


Predefined variables  

The following variables are always available and don't need to be configured. For compatibility reasons the %REGION_HOME% is recognized besides $REGION_HOME$ 

VariableExampleDescription
REGION_HOMEc:\fews\sealandRoot of the OC/FSS. This dir contains the the root config files, a localDataStore and optional a config dir
BIN_DIRc:\fews\binBin dir with the FEWS binaries used. Never write to this folder
USER_HOMEc:\users\johnUser home dir. Equals the windows environment variable %USERPROFILE%
USER_NAME
Since 2018.02
FSS_ID
Since 2018.02
FSS_INDEX_AT_HOST
Since 2018.02
FSS_GROUP_ID
Since 2018.02
MC_ID
Since 2022.02
MC_NAME
Since 2022.02
HOST_NAME
Since 2020.02
TASK_ID
String 2022.01
TASK_RUN_ID
Since 2020.02
TASK_RUN_ID_FOR_PATH
Since 2022.01
TASK_USER_ID
Since 2022.01
WHAT_IF_ID
Since 2022.01

WHAT_IF_ID_FOR_PATH


Since 2022.01
WHAT_IF_NAME
Since 2021.02

Referencing other global properties in global properties

In the *global.properties earlier listed properties can be used to define a property value.

example

IMPORT_FOLDER=...

IMPORT_PI=$IMPORT_FOLDER$/PI

Referencing environment variables in global properties (Since 2021.01)

In the *global.properties environment variables can be used to define the property value.

example

IMPORT_FOLDER=%IMPORT_FOLDER%

Variable table

A suggested list of global variables that can be used in any xml configuration (except the the clientConfig.xml) with the use of $ signs around the variables (e.g. $EXPORT_FOLDER$). These are suggestions only, all variables can be defined.

VariableExampleDescription
ARCHIVE_EXPORT =//SERVER/../../ARCHIVE/EXPORTPath definition
ARCHIVE_IMPORT=//SERVER/../../ARCHIVE/IMPORTPath definition
EXPLORER_SYSTEMCAPTION=Application NameOption to set the CLIENT window title of the FEWS Explorer. In Explorer.xml the element <systemCaption> underneath <systemInformation> should contain a reference ($EXPLORER_SYSTEMCAPTION$) to this global property variable
EXPORT_FOLDER=//SERVER/../../EXPORTPath definition
EXPORT_FOLDER_SOURCE=//SERVER/../../EXPORT/MATROOSPath definition. Option to control the import/export folders in the global properties. This can be configured in the Import/Export Modules.
IMPORT_FOLDER=//SERVER/../../IMPORTPath definition
IMPORT_FOLDER_SOURCE=//SERVER/../../IMPORT/ECMWF_DETPath definition. Option to control the import/export folders in the global properties. This can be configured in the Import/Export Modules.