Versions Compared

Key

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

Table of Contents


Note
This is an optional offering. Once deployed, users are responsible for its maintenance and updates. Feel free to ask for feedback in the #peer-support channel on EWC RocketChat.
Tip

Unlike the Data Tailor Web Services (DTWS), 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

Introduction

...

.


The Data Tailor is a product customization toolbox designed to enable :

  • Enable users to tailor satellite data to their specific needs.

...

  • 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.

...

  • Customize data from various satellite collections, including METOP, MFG ,MSG, MTG (Meteosat Third Generation) 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 customizations inside the Data Tailor, please go to to Products and Customisations Customizations Available in the Data Tailor page.

Table of Contents

Current limitations


How to provision the EUMETSAT Data Tailor Standalone

Tip

If provisioning after October of 2025, we recommend deploying based on the community hub, to benefit form upcoming features or fixes.

Deployment based on the EWC Community Hub

Checkout the corresponding Community Hub Item.

Deployment via Morpheus UI (deprecated)

Warning

This method of deployment is deprecated, and kept in documentation only as reference for EUMETSAT tenancies that relied on it prior to October of 2025.

Note
Warning

Due to design of the software, only one

linux

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 your Morpheus Dashboard.
  2. Search for Data Tailor Standalone, select it and click next.
    Image RemovedImage Added
  3. Choose a NAME for the instance type and move to next step.
    Image RemovedImage 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 RemovedImage 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:
    Image Removed

Post-provisioning

  1. SSH into your instance following the Remote Access to the VM documentation. 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 epct-desktop environment
    $ conda env list
    # conda environments:
    #
    base                  *  /usr/local/miniconda
    epct-desktop             /usr/local/miniconda/envs/epct-desktop
  3. 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. <==
  4. 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 epct-desktop
    
    (epct-desktop) $ epct info
    epct_version: 3.4.0
    etc_dir: /usr/local/miniconda/envs/epct-desktop/etc/epct
    workspace_dir: /usr/local/miniconda/envs/epct-desktop/var/cache/epct
    customisations_log_dir: /usr/local/miniconda/envs/epct-desktop/var/log/epct
    output_dir: /
    installed_plugins:
      - epct-plugin-netcdf-generator, 3.1.1
      - epct-plugin-ncarrays, 1.1.0
      - epct-plugin-umarf, 3.2.0
      - epct-plugin-gis, 3.3.0
    registered_backends:
      - epct_1d_array
      - epct_2d_array
      - epct_ascatl1szf
      - epct_eps_gome2l1b
      - epct_eps_grasl1
      - epct_eps_iasil1c
      - epct_eps_iasisnd02
      - epct_eps_native
      - epct_eps_native_gome2l1_iasisnd02
      - epct_gis
      - epct_gis_eps
      - epct_gis_eps_grib2
      - epct_gis_fcil2
      - epct_gis_glbsst
      - epct_gis_glbsst_grib2
      - epct_gis_grib2
      - epct_gis_hrit
      - epct_gis_hrit_grib2
      - epct_gis_hrit_png_16_bit
      - epct_gis_msg
      - epct_gis_msg_meteo_bufr
      - epct_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] - INFO - Start process "4c15df87"
    2024-06-13 10:05:25 - PROCESSING.chain_runner[241] - INFO - WORKER: localhost
    2024-06-13 10:05:25 - PROCESSING.chain_runner[242] - INFO - PID: 17361
    2024-06-13 10:05:25 - PROCESSING.chain_runner[243] - INFO - backend: epct_gis_msg
    2024-06-13 10:05:25 - PROCESSING.chain_runner[244] - INFO - user: None
    2024-06-13 10:05:28 - PROCESSING.preprocessing[677] - INFO - Processing details - product: 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-20240613095742.896000000Z-NA.nat
    2024-06-13 10:05:28 - PROCESSING.epct_gis[742] - INFO - Expected steps: 6
    2024-06-13 10:05:28 - PROCESSING.epct_gis[744] - INFO - Starting step "IMPORT" 1/6 ...
    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[397] - INFO - a preliminary ROI is applied to the intermediate VRT
    2024-06-13 10:05:28 - PROCESSING.vrt[90] - INFO - Command line and its output ...
    
    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/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/MSG3-SEVI-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[758] - INFO - ... step "FILTER" finished!
    2024-06-13 10:05:28 - PROCESSING.epct_gis[754] - INFO - Starting step "PROJECTION" 3/6 ...
    2024-06-13 10:05:28 - PROCESSING.vrt[90] - INFO - Command line and its output ...
    
    gdalwarp -overwrite --config CPL_MAX_ERROR_REPORTS 1 -of GTiff -co BIGTIFF=IF_SAFER -co COMPRESS=DEFLATE -ot Float32 -t_srs "EPSG:4326" --config THRESHOLD 0.005 -r near -srcnodata -1000.0 "/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/MSG3-SEVI-MSG15-0100-NA-20240613095742.896000000Z-NA_roi.vrt" "/usr/local/miniconda/envs/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/intermediate_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[754] - INFO - Starting step "ROI" 4/6 ...
    2024-06-13 10:05:32 - PROCESSING.vrt[90] - INFO - Command line and its output ...
    
    gdalwarp -overwrite --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/epct-desktop/var/cache/epct/EPCT_HRSEVIRI_FPC_4c15df87/intermediate_warped_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 ...
    
    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 "FORMAT" finished!
    2024-06-13 10:05:32 - PROCESSING.postprocessing[468] - INFO - Starting step "POST-PROCESSING" 6/6 ...
    2024-06-13 10:05:32 - PROCESSING.postprocessing[493] - INFO - ... step "POST-PROCESSING" finished!
    2024-06-13 10:05:32 - PROCESSING.postprocessing[495] - INFO - 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]
    

...

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

...

  1. Image Added