-
Notifications
You must be signed in to change notification settings - Fork 1
admin user guide
There are four admin-oriented sections which can be used to control the system:
- Admin UI - can be used to edit system data
- Prefect UI - useful for monitoring the periodic refresh of observation data
- Tolgee translations app - used to translate the main user interface
- ARPAV-PPCV CLI - Command-line interface used to execute highly privileged operations
The admin section's main purpose is to allow configuration of properties related to:
- forecast and historical NetCDF datasets
- observation stations and their related measurements
The admin is available at the <base-url>/admin
path and is protected by an authorization system. Users need
to provide a suitable username
/password
pair in order to gain access to this section.
Note
Access credentials to the admin section would have been made available to all relevant parties. If not, please request access
It is divided into the following sections:
- Configuration parameters - List and edit coverage configuration parameters, which are used for filtering and in templated strings
- Coverage configurations - List and edit coverage configurations
- Variables - List and edit observation variables
- Stations - List and edit observation stations
- Measurements - Visualize observation measurements
Each section starts out by showing a list page that allows searching for the relevant elements, which can then be inspected or edited in their corresponding detail page.
This section allows modifying the configuration parameters that are recognized by the system. The purpose of these parameters is twofold:
- To serve a metadata properties which can be attached to coverage configurations and later used to build coverage identifiers, and also for filtering them when searching
- To allow parametrization of a coverage configuration's internal properties, such as its THREDDS path, WMS layer name, etc
A configuration parameter has the following properties:
-
name
- This is the name used to refer to this parameter in coverage configuration templated strings -
display name english
- This is the name to be used in the frontend when referring to this configuration parameter, in english -
display name italian
- This is the name to be used in the frontend when referring to this configuration parameter, in italian -
description english
- Description for the parameter, in english -
description italian
- Description for the parameter, in italian -
allowed values
- A list of possible values that the parameter can take. Each allowed value has the following properties:-
internal value
- This is the value that is used internally by the system when using this parameter for rendering templated strings. -
name
- This is the identifier of the allowed value, which is used in templated strings, coverage identifiers and everywhere else where this value needs to be referenced -
display name english
- This is the name to be used in the frontend when referring to this value, in english -
display name italian
- This is the name to be used in the frontend when referring to this value, in italian
-
All of these parameters can be edited in the configuration parameter's detail page of the admin section.
Caution
Some of the configuration parameters are pre-generated when the system is first installed and are vital for a correct operation.
As such, do ensure that these default pre-existing configuration parameters are not deleted.
In case of an accidental deletion, it is possible to recreate them manually using the admin interface.
A future version of the system may prevent you from deleting these privileged parameters, but for the moment it is indeed possible to delete them.
Caution
Since the system relies on the existence of some pre-existing configuration parameters, changing their name
property will cause the system to malfunction.
A future version of the system may prevent you from being able to modify the name of these configuration parameters, but for now please take care not to change them.
For example, a configuration parameter named scenario
, which is to be used to represent forecast model scenarios,
can be defined like this:
- name: scenario
- display name english: Scenario
- display name italian: Scenario
- description english: Climate model scenario
- description italian: Scenario del modello climatico
-
allowed values:
- internal value: rcp26 name: rcp26 display name english: RCP26 display name italian: RCP26 description english: Representation Concentration Pathway (RCP) scenario that assumes climate forcing values of 2.6 W/m2 description italian: Scenario Representation Concentration Pathway (RCP) che presuppone valori di forzante climatica di 2,6 W/m2
- internal value: rcp45 name: rcp45 display name english: RCP45 display name italian: RCP45 description english: Representation Concentration Pathway (RCP) scenario that assumes climate forcing values of 4.5 W/m2 description italian: Scenario Representation Concentration Pathway (RCP) che presuppone valori di forzante climatica di 4,5 W/m2
- internal value: rcp85 name: rcp85 display name english: RCP85 display name italian: RCP85 description english: Representation Concentration Pathway (RCP) scenario that assumes climate forcing values of 8.5 W/m2 description italian: Scenario Representation Concentration Pathway (RCP) che presuppone valori di forzante climatica di 8,5 W/m2
A 'coverage configuration' is a set of configuration parameters which allow the system to locate and use NetCDF files served by the THREDDS server. Each coverage configuration can represent a number of NetCDF files and they are used to define 'coverage identifiers', which represent single NetCDF files.
Coverage configurations can be marked with a set of 'possible values'. Each possible value is one of the allowed values from the exiting configuration parameters. These possible values are then eligible for using in the coverage configuration's properties that accept a templated string. Possible values are also used to build the set of valid 'coverage identifiers' for a coverage configuration.
Note
A coverage identifier represents a single NetCDF file and its underlying relevant variable. Coverage identifiers are built from coverage configurations by rendering all of the possible combinations of the coverage configuration's possible values.
Example: A coverage configuration with a name of test_name
and possible values of:
-
measure
:absolute
-
scenario
:rcp26
-
scenario
:rcp45
-
scenario
:rcp85
-
climatological_variable
:tas
-
year_period
:all_year
-
archive
:forecast
-
aggregation_period
:annual
-
climatological_model
:model_ensemble
Would have an autogenerated coverage_id_pattern
of
{name}-{aggregation_period}-{archive}-{climatological_model}-{climatological_variable}-{measure}-{scenario}-{year_period}
.
This would get rendered at runtime into the following set of coverage identifiers:
test_name-annual-forecast-model_ensemble-tas-absolute-rcp85-all_year
test_name-annual-forecast-model_ensemble-tas-absolute-rcp26-all_year
test_name-annual-forecast-model_ensemble-tas-absolute-rcp45-all_year
The system would then expect to be able to locate a single NetCDF file (and underlying NetCDF variable inside) for each of these coverage identifiers.
A coverage configuration has a number of properties which can be set to a templated string. These enable a flexible way of describing the location of NetCDF files and their related variables.
Note
A templated string is a string that has special marks, which are dynamically rendered at runtime.
These special marks are formated as {conf_param}
where conf_param is the name of an existing configuration
parameter. For example:
ensymbc/clipped/tas_avg_{scenario}_ts19762100_ls_VFVG.nc
The templated string shown above can be used for a coverage configuration's thredds URL pattern
property.
It contains the {scenario}
special mark. This refers to a configuration parameter named scenario and the system
is then able to replace it with the internal value
of values from the configured allowed values
for this
parameter, as long as these values are specified in the coverage configuration's possible values
property.
Getting back to the string above, let's imagine that the coverage configuration had as possible values
:
scenario-rcp26
scenario-rcp45
In this case, then the system would render the templated string above into the following list:
ensymbc/clipped/tas_avg_rcp26_ts19762100_ls_VFVG.nc
ensymbc/clipped/tas_avg_rcp45_ts19762100_ls_VFVG.nc
A coverage configuration has the following properties:
-
id
- (readonly) This is a unique identifier assigned by the system. It is used in the API layer -
name
- Name for the coverage configuration. It m -
display name english
- This is the name to be used in the frontend when re -
display name italian
- This is the name to be used in the frontend when re -
description english
-
description italian
-
netcdf main dataset name
- (templated string) Name of the NetCDF variable that should be used when asking the THREDDS server for data. You can specify a templated string -
WMS main layer name
- (templated string) Name of the primary WMS layer which shall be used by the frontend. T -
WMS secondary layer name
- -
THREDDS URL pattern
- (templated string) URL fragment for where the NetCDF files that are represented by this coverage configuration are served by THREDDS.
In addition to being a templated string, this property is also interpreted as a shell-like pattern. This means that it is possible to define a filename pattern which the system will resolve at runtime. Recognized characters:-
*
: matches everything ?
-
-
coverage id pattern
-
unit english
-
unit italian
-
palette
-
color scale min
-
color scale max
-
observation variable
-
observation variable aggregation type
-
possible values
-
uncertainty lower bounds coverage configuration
-
uncertainty upper bounds coverage configuration
-
related coverages