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

Compare with Current View Page History

« Previous Version 23 Next »

The Archives.xml can be used to configure the connection between your sa,oc or fss with the archive. For an sa or oc the configuration only consists of the catalogueUrl in case you have configured the archve according the standard (which is usually the case).

An example is given below.

<?xml version="1.0" encoding="UTF-8"?>
<archives xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/archives.xsd">
	<catalogueUrl>http://myserver:8080/deltares-archive-server/catalogue</catalogueUrl>
</archives>


Data from the Open Delft-FEWS Archive can be used in a Stand Alone or Operator Client FEWS client; this functionality is called seamless integration. The Archives.xml file, located in the SystemConfigFiles folder, is used to add this seamless integration functionality to the Delft-FEWS system. Seamless integration between the Open Delft-FEWS Archive and the Operational Delft-FEWS Database means that when data is not found in the operational database, FEWS will search for this data in the Open Archive.

The seamless integration functionality is now available in the Time Series Display for external historical scalar time series. Additional functionality for simulations and external historical time series is included in the FEWS pi-services.

Below an example of the content an Archives.xml configuration file:

<?xml version="1.0" encoding="UTF-8"?>
<archives xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/archives.xsd">
	<catalogueUrl>http://myserver:7080/deltares-archive-server/catalogue</catalogueUrl>
	<fileServerUrl>http://myserver:8081/thredds/fileServer/data</fileServerUrl>
     <dataFolder>d:\tva-archive\data\</dataFolder>
</archives>

Note that a very common mistake made in configuring the Archives.xml is that the catalogueURL does not end with catalogue!

The only configuration needed in the Archives.xml is the location of the catalogue and thredds:

  • The catalogue used for seamless integration is the internal elastic search catalogue (not the Geonetwork catalogue). The catalogue is used by the FEWS client to find archived data.
  • The fileserver used for seamless integration in the THREDDS server. The fileserver is used to download the data from the archive.

The datafolder is optional. It is used by the pi-service (rest and soap) to read the data. If the datafolder is configured the data is read from the folder directly and not from THREDDS. Reading the data directly from disk is faster than reading the data from THREDDS. So the datafolder should be the root of the datafolder of the archive as it is on the server on which the pi-service is configured.

Test of the Archive configuration

To test if the catalogue url is correct, paste the url in an internet browser. If the config is correct the response below will be visible (or something similar)

FEWS 201702 and lower

{
  "status" : 200,
  "name" : "Cameron Hodge",
  "version" : {
    "number" : "1.3.2",
    "build_hash" : "dee175dbe2f254f3f26992f5d7591939aaefd12f",
    "build_timestamp" : "2014-08-13T14:29:30Z",
    "build_snapshot" : false,
    "lucene_version" : "4.9"
  },
  "tagline" : "You Know, for Search"
}

FEWS 201802 and higher

In the release 201802 and higher you see a response that either indicates that the catalogue is moved to another URL (releases prior to august 2020) or the response will look like

This url was used to host the embedded catalogue prior to the 201802 release.
Now it is used to verify that the correct catalogueURL is configured correctly in the Archives.xml
The URL http://localhost:7080/deltares-archive-server/catalogue should be used as the catalogueURL in the Archives.xml


To test if the fileServer url is correct append /catalog.html to the url configured and paste this url in an intenet browser. If the url is correct a list of the files and directories in the root of the data folder in the archive will be visible. 

ElasticSearchUrl

By default FEWS will assume that the elastic catalogue is running at the same server as the archive web application at the port 9200.

The default can be changed by using the tag elasticSearchUrl. Below an example

<?xml version="1.0" encoding="UTF-8"?>
<archives xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/archives.xsd">
	<catalogueUrl>http://myserver:7080/deltares-archive-server/catalogue</catalogueUrl>
	<elasticSearchUrl>http://myserver:9800</elasticSearchUrl>
</archives>


Reverse proxy (FEWS 201802 and higher)

A FEWS OC or SA needs access to the catalogue to search for data in the archive.

It was therefore necessary to provide direct access to elastic from a FEWS OC or SA, this introduced a security risk.

Since the beginning of August 2020 the FEWS Archive has a read-only reverse proxy running inside the Archive web application.

This reverse proxy redirects only the limited set of read-only elastic requests which an FEWS OC or SA needs.

The reverse proxy is available at the relative URL /elastic in the Archive web application.

 If you want the FEWS clients to connect to the reverse proxy instead of connecting directly to elastic you should configure tag elasticSearchUrl like example below. 

<?xml version="1.0" encoding="UTF-8"?>
<archives xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/archives.xsd">
	<catalogueUrl>http://myserver:7080/deltares-archive-server/catalogue</catalogueUrl>
	<elasticSearchUrl>http://myserver:7080/deltares-archive-server/elastic</elasticSearchUrl>
</archives>

Both the catalogueUrl and the elasticSearchUrl tags should be configured!


You can test the elasticSearchUrl by pasting the URL in a browser.

You should get a response like this.

Archive database

It is possible to store scalar data inside a database instead of in netcdf-files. In the Archives.xml the details of the database (URL, username and password) and the details about how to load the plugin for the archive database should be configured.

At the moment there is a plugin available for MongoDB. 

A configuration example for the MongoDB plugin is available below:

<?xml version="1.0" encoding="UTF-8"?>
<archives 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/archives.xsd">
	<catalogueUrl>https://fews-ut-ar-202201.avi.deltares.nl/deltares-archive-server/</catalogueUrl>
	<elasticSearchUrl>https://fews-ut-ar-202201.avi.deltares.nl/deltares-archive-server/elastic</elasticSearchUrl>
	<archiveDatabase>
		<archiveDatabaseUrl>mongodb://server:port/fewsarchive?authSource=admin</archiveDatabaseUrl>
		<user>myuser</user>
		<password>mypass</password>
		<pluginClass>nl.fews.archivedatabase.mongodb.MongoDbArchiveDatabase</pluginClass>
		<pluginFactoryMethod>create</pluginFactoryMethod>
	    <openDatabasePluginPanelBinDir>d:\mongdb-plugin\</openDatabasePluginPanelBinDir>
	</archiveDatabase>
</archives>


The archiveDatabaseUrl and the username and password are dependend on your own system setup. If you use the MongoDB-plugin then you should use the pluginClass and pluginFactoryMethod as shown in the example.

The binDir is optional. You can configure a custom directory to install the jar-files of the plugin in. If you dont configure a custom pluginDir then you should located the plugin-jar in the same directory as the FEWS-jars.

The plugin can be provided by Deltares on request.


  • No labels