Versions Compared

Key

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

...

Required element. One or more references to the required root configuration files which should always be downloaded when an OC or FSS starts. For an OC the following root configuration files are important to mention here: patch.jar, oc_global.properties, splash-screen reference and oc_clientConfig.xml. See below mentioned image. Important remark is that when the OC starts, it will be checked if these files are present. If not, they will be downloaded. If they are already there, it will be checked it is the correct active version as in the central database. If the files on the file systems are not the active version, they will be downloaded and overwritten.

Image Removed

connection

Optional element to define the connections to the Master Controller. Only required if you have more than 1 Master Controller connections (multi MC environments).

...

Code Block
languagexml
titleExample of a clientConfig.xml with more than 1 connection (multi MC environment)
<clientConfiguration xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews
http://fews.wldelft.nl/schemas/version1.0/clientConfig.xsd">
        <title>HyFS-RM2018-OC</title>
        <clientType>Operator Client</clientType>
        <otherRootConfigFiles>
                <name>patch.jar</name>
                <name>fews-splash.jpg</name>
                <name>oc_delft_global.properties</name>
        </otherRootConfigFiles>
        <connection id="mc00_postgresql">
                <databaseServer>
                        <url>jdbc:postgresql://myhost:5432/mc00</url>
                        <user>username</user>
                        <password>######</password>
                </databaseServer>
        </connection>
        <connection id=" mc01_oracle">
                <databaseServer>
                        <url>jdbc:oracle:thin:@myhost:1521:mc01</url>
                        <user>rm201802</user>
                        <password>######</password>
                </databaseServer>
        </connection>
        <connection id="mc02_sqlserver">
                <databaseServer>
                        <url>jdbc:sqlserver://myhost:1433;DatabaseName=mc02</url>
                        <user>fewsuser</user>
                        <password>######</password>
                </databaseServer>
        </connection>
        <jvmOption>-Xmn1000m</jvmOption>
        <jvmOption>-Xmx1500m</jvmOption>
        <autoExportModuleDataSet name="HyFS_Help" exportDir="products"/>
        <autoExportModuleDataSet name="AUS_Products" exportDir="products"/>
        <autoExportModuleDataSet name="QLD_Products" exportDir="products"/>
        <autoExportModuleDataSet name="NSW_Products" exportDir="products"/>
        <autoExportModuleDataSet name="SA_Products" exportDir="products"/>
        <autoExportModuleDataSet name="WA_Products" exportDir="products"/>
        <autoExportModuleDataSet name="NT_Products" exportDir="products"/>
        <autoExportModuleDataSet name="TAS_Products" exportDir="products"/>
        <autoExportModuleDataSet name="VIC_Products" exportDir="products"/>
< </clientConfiguration>

jvmOption

...

  • -Xms
  • -Xmx
  • -DautoRollingBarrel=false

Image Removed

localCacheSizeMB

Local cache size (in MB, default is 500) for downloaded timeseries from central database when using Direct Database Access (or DDA) or from the Open Archive Server. This is NOT a feature when you are using synchronization to download timeseries locally to create a LocalDataStore (or LDS). If omitted, the default value of 500MB will be used.

...

Code Block
xml
xml
<clientConfiguration xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/clientConfig.xsd">
<clientType>Operator Client</clientType>
    <logging>... 
 <logging>
        <debugEnabled>false</debugEnabled> <!--since 2018.02-->
        <rollingTotalSizeMB>5</rollingTotalSizeMB> <!--since 2018.02, when a log file is reaching 1 MB a new log file is created with the next sequence number. Only the last 5 log files are kept-->	
        <windowsEventLogEnabled>true</windowsEventLogEnabled>
        <linuxSyslogFacility>local6</linuxSyslogFacility>
    </logging>
</clientConfiguration>

...

In fact: the complete structure on an FSS underneath the "/Modules/" folder should (ideally) be stored in one or more ModuleDataSet files. Only in this way, FSSs can be used for scaling up/down since its content is generated automatically. See below mentioned image with a number of references to ModuleDataSet files. Image Removed

The exportDir is relative to %REGION_HOME% unless otherwise specific. The name references the moduleDataSet file-name without the zip-extension. It is not required register to this file-name as a moduleInstanceId.

...

Per synchProfile you can define what should be synched. Most elements are compulsory and can be set to enabled (true/false). Within the timeseries, warmstates, logentries and  thresholdevents you can configure a certain maximum age. See config example below. Ensure that you include all relevant synchLevels in your application. See also the definition of default sychnLevel synchLevel here.

Code Block
languagexml
titleConfiguration Example for a synchProfile section
<clientConfiguration xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews
http://fews.wldelft.nl/schemas/version1.0/clientConfig.xsd">
    <title>HyFS-RM2018-OC</title>
    <clientType>Operator Client</clientType>
    <otherRootConfigFiles>
        <name>patch.jar</name>
        <name>fews-splash.jpg</name>
        <name>oc_delft_global.properties</name>
    </otherRootConfigFiles>
    <connection id="mc00_postgresql">
        <databaseServer>
            <url>jdbc:postgresql://dl-081.xtr.deltares.nl:5432/core00</url>
            <user>username</user>
            <password>######</password>
        </databaseServer>
        <synchProfileId>full</synchProfileId>
        <synchProfileId>minimal</synchProfileId>
    </connection>
    <connection id=" mc01_oracle">
        <databaseServer>
            <url>jdbc:oracle:thin:@pl-or001.xtr.deltares.nl:1521:rm201802</url>
            <user>rm201802</user>
            <password>######</password>
        </databaseServer>
        <synchProfileId>full</synchProfileId>
        <synchProfileId>minimal</synchProfileId>
    </connection>
    <connection id="mc02_sqlserver">
        <databaseServer>
            <url>jdbc:jtds:sqlserver://dw-ms002.xtr.deltares.nl:1433;DatabaseName=roadmapmc01;useCursors=false;sendStringParametersAsUnicode=false</url>
            <user>fewsuser</user>
            <password>######</password>
        </databaseServer>
        <synchProfileId>full</synchProfileId>
        <synchProfileId>minimal</synchProfileId>
    </connection>
    <synchProfile id="full">
        <xmlConfig enabled="true" name="Default xml config" synchLevel="11"/>
        <coldStates enabled="true" name="Default cold states" synchLevel="11"/>
        <moduleDataSets enabled="true" name="Default module data sets" synchLevel="11"/>
        <mapLayers enabled="true" name="Default module data sets" synchLevel="11"/>
        <icons enabled="true" name="Default icons" synchLevel="11"/>
        <reportTemplates enabled="true" name="Default report templates" synchLevel="11"/>
        <reportImages enabled="true" name="Default report images" synchLevel="11"/>
        <!-- this is just an example and does not include the full list of possible synchLevels!! -->
        <continuousTimeSeries enabled="true" name="Telemetry" synchLevel="1" maxAge="10" unit="day"/>
        <continuousTimeSeries enabled="true" name="Manual" synchLevel="5" maxAge="10" unit="day"/>
        <continuousTimeSeries enabled="true" name="Astronomical and climatological" synchLevel="4" maxAge="1000" unit="day"/>
        <continuousTimeSeries enabled="true" name="Small external forecast grids" synchLevel="6" maxAge="10" unit="day"/>
        <continuousTimeSeries enabled="true" name="Large external forecast grids" synchLevel="16" maxAge="10" unit="day"/>
        <forecastTriggeredTimeSeries name="Simulated forecast time series" enabled="true" synchLevel="0"/>
        <warmStates enabled="true" name="Warm states" maxAge="10" unit="day"/>
        <logEntries enabled="true" name="Log Entries" maxAge="10" unit="day"/>
        <thresholdEvents enabled="true" name="Threshold Events" maxAge="10" unit="day"/>
    </synchProfile>
    <synchProfile id="minimal">
        <xmlConfig enabled="true" name="Default xml config" synchLevel="11"/>
        <coldStates enabled="true" name="Default cold states" synchLevel="11"/>
        <moduleDataSets enabled="false" name="Default module data sets" synchLevel="11"/>
        <mapLayers enabled="true" name="Default module data sets" synchLevel="11"/>
        <icons enabled="true" name="Default icons" synchLevel="11"/>
        <reportTemplates enabled="false" name="Default report templates" synchLevel="11"/>
        <reportImages enabled="false" name="Default report images" synchLevel="11"/>
        <continuousTimeSeries enabled="true" name="Telemetry" synchLevel="1" maxAge="1" unit="day"/>
        <continuousTimeSeries enabled="true" name="Manual" synchLevel="5" maxAge="1" unit="day"/>
        <continuousTimeSeries enabled="true" name="Astronomical and climatological" synchLevel="4" maxAge="1000" unit="day"/>
        <continuousTimeSeries enabled="false" name="Small external forecast grids" synchLevel="6" maxAge="10" unit="day"/>
        <continuousTimeSeries enabled="false" name="Large external forecast grids" synchLevel="16" maxAge="10" unit="day"/>
        <forecastTriggeredTimeSeries name="Simulated forecast time series" enabled="true" synchLevel="0"/>
        <warmStates enabled="false" name="Warm states" maxAge="10" unit="day"/>
        <logEntries enabled="true" name="Log Entries" maxAge="1" unit="day"/>
        <thresholdEvents enabled="true" name="Threshold Events" maxAge="1" unit="day"/>
    </synchProfile>
</clientConfiguration>


...