Versions Compared

Key

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

...

In the EUMETSAT section of the European Weather Cloud, there's now an instance equipped with the Data Tailor Standalone and EUMETSAT Data Access Client (EUMDAC) together, which includes all the currently available plugins on a Rocky Linux system.  Below, you'll find a guide that covers the provisioning, a minimal post-installation process, and usage instructions.

The Data Tailor is a product customization toolbox designed to enable users to tailor satellite data to their specific needs. It offers the ability to subset and aggregate data products across space and time, filter layers, generate quick looks, reproject data onto new coordinate reference systems, and reformat data into widely used Geographic Information System (GIS) formats such as netCDF and GeoTIFF, as well as image formats like JPEG and PNG. The Data Tailor can currently customize data from various satellite collections, including METOP, MSG, and Sentinel-3. There are two versions of the Data Tailor: the Data Tailor Web Service (DTWS) and the Data Tailor Standalone. The DTWS allows users to customize products in the EUMETSAT Data Store before downloading them. On the other hand, the Data Tailor Standalone is an application that can be installed on your machine, enabling you to customize downloaded products. Unlike the Data Tailor Web Services, which can be used with EUMDAC or via https://tailor.eumetsat.int, the standalone version is generally faster and does not have limitations such as maximum concurrent jobs or workspace size. For more information on capabilities of the Data Tailor, please refer to to Data Tailor Standalone Guide on User Portal and for more information about the available products and customisations inside the Data Tailor, please go to Products and Customisations Available in the Data Tailor page.

Table of Contents

Current limitations

...

Warning
  • Due to design of the

...

  • software, only one linux user is able to use the software without additional settings. When a user runs the application for the first time, various configuration files are created with permissions only editable by that user.

Installation

Provisioning

  1. Create the Data Tailor standalone instance by clicking on + ADD button on your Morpheus Dashboard.
  2. Search for Data Tailor Standalone, select it and click next.
    Image Added
  3. Choose a NAME for the instance type and move to next step.
    Image Added
  4.  Insert at least the following inputs and click next:
    • layout: make sure it is rocky-datatailor
    • plan: select one with at least 16GB of RAM (e.g. eo2.xlarge)
    • network: private
    • security group: ssh
      Image Added
  5. Once done, click Complete and the provisioning will start.
  6. Look for the instance list (Provisioning → Instances) to check the status of the instance.
  7. Once ready you will see the green Running sign below the instance as below:

Installation

Provisioning

  1. Create the Data Tailor standalone instance by clicking on + ADD button on your Morpheus Dashboard.
  2. Search for Data Tailor Standalone, select it and click next.
    Image Removed
  3. Confirm the layout. We recommend at least 16GB of ram in your instance for the application. Click next.
    Image Removed
  4. Create the instance and confirm it's running.

Post-provisioning

  1. SSH into your instance following the Remote Access to the VM documentation.

...

  1. Alternatively, you can also use the console on Morpheus from your instance (Provisioning → Instances → select your instance and go to the Console section)
  2. Running the following commands you can verify if the installation was successful.
    Code Block
    languagebash
    titleCheck conda installation and

...

  1. epct-desktop environment
    $ conda env list
    # conda environments:
    #
    base                  *  /usr/local/miniconda
    

...

  1. epct-desktop             /usr/local/miniconda/envs/

...

  1. epct-desktop
  2. After confirming the installation, add conda environment to your shell and then restart it.
    Code Block
    languagebash
    titleIntegrate conda in your shell and restart your shell
    $ conda init
    no change     /usr/local/miniconda/condabin/conda
    no change     /usr/local/miniconda/bin/conda
    no change     /usr/local/miniconda/bin/conda-env
    no change     /usr/local/miniconda/bin/activate
    no change     /usr/local/miniconda/bin/deactivate
    no change     /usr/local/miniconda/etc/profile.d/conda.sh
    no change     /usr/local/miniconda/etc/fish/conf.d/conda.fish
    no change     /usr/local/miniconda/shell/condabin/Conda.psm1
    no change     /usr/local/miniconda/shell/condabin/conda-hook.ps1
    no change     /usr/local/miniconda/lib/python3.11/site-packages/xontrib/conda.xsh
    no change     /usr/local/miniconda/etc/profile.d/conda.csh
    modified      /home/USERNAME/.bashrc
    
    ==> For changes to take effect, close and re-open your current shell. <==
  3. After restarting your shell, you should be able to see that you're in base environment of conda.
    Code Block
    languagebash
    titleActivate the conda environment and test the application
    (base) $ conda activate 

...

  1. epct-desktop
    
    (

...

  1. epct-desktop) $ epct info
    epct_version: 3.

...

  1. 4.0
    etc_dir: /usr/local/miniconda/envs/

...

  1. epct-desktop/etc/epct
    workspace_dir: /usr/local/miniconda/envs/

...

  1. epct-desktop/var/cache/epct
    customisations_log_dir: /usr/local/miniconda/envs/

...

  1. epct-desktop/var/log/epct
    output_dir: /
    installed_plugins:
    

...

  1.   - epct-plugin-netcdf-

...

  1. generator, 3.1.1

...

  1. 
    

...

  1.   - epct-plugin-

...

  1. ncarrays, 

...

  1. 1.

...

  1. 1.0
    

...

  1.   - epct-plugin-umarf, 3.2.0
      - epct-plugin-gis, 3.3.0
    registered_backends:
    

...

  1.   - epct_1d_array
    

...

  1.   - epct_2d_array
    

...

  1.   - epct_ascatl1szf
    

...

  1.   - epct_eps_gome2l1b
    

...

  1.   - epct_eps_grasl1
    

...

  1.   - epct_eps_iasil1c
    

...

  1.   - epct_eps_iasisnd02
    

...

  1.   - epct_eps_native
    

...

  1.   - epct_eps_native_gome2l1_iasisnd02
    

...

  1.   - epct_gis
    

...

  1.   - epct_gis_eps
    

...

  1.   - epct_gis_eps_grib2
    

...

  1.   - epct_gis_

...

  1. fcil2
    

...

  1.   - epct_gis_glbsst
      - epct_gis_glbsst_grib2
    

...

  1.   - epct_gis_grib2
    

...

  1.   - epct_gis_hrit
    

...

  1.   - epct_gis_hrit_grib2

...

  1. 
      - epct_gis_hrit_png_16_bit
      - epct_gis_msg
    

...

  1.   - epct_gis_msg_meteo_bufr
    

...

  1.   - epct

...

  1. _gis_msg_png_16_bit
      - epct_gis_mtgfcil1
      - epct_or1sww025
      - epct_plugin_netcdf_generator
      - epct_plugin_umarf_isccp
      - epct_plugin_umarf_isccp_nat
      - epct_plugin_umarf_msgclmk_grib
      - epct_plugin_umarf_msgclmk_netcdf
      - epct_plugin_umarf_msgnative
      - epct_plugin_umarf_msgnative_hrv_nat
      - epct_plugin_umarf_msgnative_nat
      - epct_plugin_umarf_openmtp
      - epct_plugin_umarf_rgb_dc_jpeg
      - epct_plugin_umarf_rgb_dc_jpeg_nat
      - epct_plugin_umarf_rgb_dc_png
      - epct_plugin_umarf_rgb_dc_png_nat
      - epct_plugin_umarf_xrit
      - epct_plugin_umarf_xrit_nat
    executable_paths:
      epct_plugin_netcdf_generator: null

The Data Tailor Standalone is ready to use. Whenever you want to use the application, just activate your conda environment with $ conda activate epct-desktop and run your customisations.

Usage

The Data Tailor standalone has multiple ways of use including:

For more information, please refer to:  Data Tailor Standalone Guide.

Example

Below is a small example of using the application with CLI. 

  1. Activate the conda environment.
    Code Block
    languagebash
    titleActivate the conda environment
    (base) $ conda activate epct-desktop
    
  2. Create the chain.yaml
    Code Block
    languageyml
    titlechain.yaml
    product: HRSEVIRI
    format: netcdf4
    projection: geographic
    roi: western_europe
    filter:
      bands:
        - channel_9
        - channel_10
        - channel_11
  3. Run your customisation using the command below:
    Code Block
    languagebash
    titleRun chain
    (epct-desktop) $ epct run-chain -f chain.yaml MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA.zip
    2024-06-13 10:05:25 - PROCESSING.chain_runner[291

The Data Tailor Standalone is ready to use. Whenever you want to use the application, just activate your conda environment with $ conda activate dt_3_3 and run your customisations.

Usage

The Data Tailor standalone has multiple ways of use including a web-app GUI (graphical user-interface), CLI (command line interface), a Python Library and within EUMDAC. For more information, please refer to:  Data Tailor Standalone Guide. Below is a small example of using the application with CLI. 

Code Block
languagebash
titleActivate the conda environment
(base) $ conda activate dt_3_3

Run your customisation.

...

languagebash
titleRun chain

...

  1. ] - INFO - 

...

  1. Start 

...

  1. process "4c15df87"
    2024-06-13 10:05:25 - PROCESSING.chain_runner[241] - INFO - WORKER: localhost
    2024-06-13 10:05:25 - PROCESSING.

...

  1. chain_runner[

...

  1. 242] - INFO - 

...

  1. PID: 17361
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 25 - PROCESSING.

...

  1. chain_

...

  1. runner[

...

  1. 243] - INFO - 

...

  1. backend: 

...

  1. epct_gis_msg
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 25 - PROCESSING.

...

  1. chain_

...

  1. runner[

...

  1. 244] - INFO - 

...

  1. user: None
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 28 - PROCESSING.

...

  1. preprocessing[

...

  1. 677] - INFO - Processing details - 

...

  1. product: 

...

  1. HRSEVIRI chain-name: None chain-details: -product: HRSEVIRI -format: NetCDF4 (simplified) -projection: Geographic / Plate-Carree -roi: Western Europe -filter: Custom
    2024-06-13 10:05:28 - PROCESSING.preprocessing[683] - INFO - ROI name: Western Europe - NSWE: [67, 35, -23, 16] - process: 4c15df87
    2024-06-13 10:05:28 - PROCESSING.preprocessing[684] - INFO - Input products: MSG3-SEVI-MSG15-0100-NA-

...

  1. 20240613095742.

...

  1. 896000000Z-NA.

...

  1. nat
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 28 - PROCESSING.epct_gis[

...

  1. 742] - INFO - 

...

  1. Expected 

...

  1. steps: 6
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 28 - PROCESSING.

...

  1. epct_gis[

...

  1. 744] - INFO - 

...

  1. Starting 

...

  1. step 

...

  1. "IMPORT" 1/6 ...
    

...

  1. 2024-06-13 10:05:28 - PROCESSING.vrt[90] - INFO - Command line and its output ...
    
    gdal_translate -of VRT -a_srs "+proj=geos +h=35785831 +lon_0=0.0 +ellps=GRS80 +no_defs" -a_ullr -5565747.7 5565747.7 5565747.7 -5565747.7 -b 9 -b 10 -b 11  RAD:/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/decompressed_data/MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA.nat /usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA.vrt
    
    2024-06-13 10:05:28 - PROCESSING.epct_gis[

...

  1. 397] - INFO -

...

  1.  a preliminary ROI is applied to the intermediate VRT
    2024-06-13 10:05:28 - PROCESSING.vrt[

...

  1. 90] - INFO - Command line and its output

...

  1.  ...
    
    gdalwarp -cutline /usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/roi.shp -crop_to_cutline -cblend 10 -r near --config OGR_ENABLE_PARTIAL_REPROJECTION YES /usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA.vrt /usr/local/miniconda/envs/

...

  1. epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_

...

  1. 4c15df87/MSG3-SEVI

...

  1. -MSG15-0100-NA-20240613095742.896000000Z-NA_roi.vrt
    
    2024-06-13 10:05:28 - PROCESSING.epct_gis[747] - INFO - ... step "IMPORT" finished!
    2024-06-13 10:05:28 - PROCESSING.epct_gis[754] - INFO - Starting step "FILTER" 2/6 ...
    2024-06-13 10:05:28 - PROCESSING.epct_gis[

...

  1. 758] - INFO - ... step "

...

  1. FILTER" finished!
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 28 - PROCESSING.epct_gis[

...

  1. 754] - INFO - Starting step "

...

  1. PROJECTION" 

...

  1. 3/6 ...
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 28 - PROCESSING.vrt[

...

  1. 90] - INFO - Command line and its output ...
    

...

  1. 
    gdalwarp -overwrite --config CPL_MAX_ERROR_REPORTS 1

...

  1.  -of GTiff -co BIGTIFF=IF_SAFER -co COMPRESS=DEFLATE -ot Float32 -t_srs "EPSG:4326" --config THRESHOLD 0.005 -r

...

  1.  near -srcnodata -1000.0 "/usr/local/miniconda/envs/

...

  1. epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_

...

  1. 4c15df87/MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA_roi.vrt" "/usr/local/miniconda/envs/

...

  1. epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_

...

  1. 4c15df87/intermediate

...

  1. _warped.tif"
    
    2024-06-13 10:05:32 - PROCESSING.epct_gis[647] - INFO - ... step "PROJECTION" finished!
    2024-06-13 10:05:32 - PROCESSING.epct_gis[

...

  1. 754] - INFO - 

...

  1. Starting step "ROI"

...

  1.  4/6 ...
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 32 - PROCESSING.

...

  1. vrt[

...

  1. 90] - INFO - Command 

...

  1. line 

...

  1. and 

...

  1. its output ...
    
    

...

  1. gdalwarp -overwrite -

...

  1. -config CPL_MAX_ERROR_REPORTS 1 -te -23.0 35.0 16.0 67.0 -te_srs "EPSG:4326" --config THRESHOLD 0.005 -r near "/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/intermediate_warped.tif" "/usr/local/miniconda/envs/

...

  1. epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_

...

  1. 4c15df87/intermediate_warped_

...

  1. cut.tif"
    
    2024-06-13 10:05:32 - PROCESSING.epct_gis[647] - INFO - ... step "ROI" finished!
    2024-06-13 10:05:32 - PROCESSING.epct_gis[754] - INFO - Starting step "FORMAT" 5/6 ...
    2024-06-13 10:05:32 - PROCESSING.vrt[90] - INFO - Command line and its output ...

...

  1. 
    
    gdal_translate -of netCDF -co FORMAT=NC4 -ot Float32 "/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/intermediate_warped_cut.tif" "/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/OUTPUTS/EPCT_HRSEVIRI_FPC_4c15df87.nc"
    
    2024-06-13 10:05:32 - PROCESSING.epct_gis[647] - INFO - ... step "

...

  1. FORMAT" finished!
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 32 - PROCESSING.postprocessing[

...

  1. 468] - INFO -

...

  1.  Starting step "POST-PROCESSING" 6/6 ...
    2024-06-13 10:05:32 - PROCESSING.postprocessing[

...

  1. 493] - INFO 

...

  1. - ... step "POST-PROCESSING" finished!
    2024-

...

  1. 06-

...

  1. 13 

...

  1. 10:

...

  1. 05:

...

  1. 32 - PROCESSING.postprocessing[

...

  1. 495] - INFO - 

...

  1. output-product: ./HRSEVIRI_20240613T094510Z_20240613T095742Z_epct_4c15df87_FPC.nc
    2024-06-13 10:05:32 - PROCESSING.postprocessing[503] - INFO - customisation time: 7 - process: 4c15df87
    2024-06-13 10:05:32 - PROCESSING.postprocessing[504] - INFO - *** STOP PROCESSING - Status DONE ***
    
    processing-time: 6.8 [sec]
    
Info

The chain.yaml file is populated as follows:

product: HRSEVIRI format: netcdf4 projection: geographic roi: western_europe filter: bands: - channel_9 - channel_10 - channel_11
Code Block
languageyml
titlechain.yaml

The HRSEVIRI product (MSG3-SEVI-MSG15-0100-NA-

...

20240613095742.

...

896000000Z-NA.zip) is downloaded directly from the Data Store (using eumdac to be specific) and untouched. EUMDAC is included in the Data Tailor standalone instance. An example EUMDAC download command is:

$ eumdac download -c EO:EUM:DAT:MSG:HRSEVIRI --limit 1

Above command is downloading latest available product from HRSEVIRI collection.