Перейти к содержанию

Добавление заголовков GTS к уведомлениям WIS2

Результаты обучения

К концу практического занятия вы сможете:

  • настроить сопоставление между именем файла и заголовками GTS
  • загружать данные с именем файла, соответствующим заголовкам GTS
  • просматривать заголовки GTS в уведомлениях WIS2
  • использовать форму FM-12 SYNOP для ручного добавления заголовков GTS к уведомлению WIS2

Введение

Члены ВМО, желающие прекратить передачу своих данных через GTS в переходный период к WIS2, должны добавить заголовки GTS к своим уведомлениям WIS2. Эти заголовки позволяют шлюзу WIS2 к GTS перенаправлять данные в сеть GTS.

Это позволяет членам, которые перешли на использование узла WIS2 для публикации данных, отключить свою систему MSS и гарантировать, что их данные остаются доступными для членов, которые еще не перешли на WIS2.

Свойство GTS в уведомлении WIS2 должно быть добавлено как дополнительное свойство к сообщению уведомления WIS2. Свойство GTS — это объект JSON, содержащий заголовки GTS, необходимые для передачи данных в сеть GTS.

{
  "gts": {
    "ttaaii": "FTAE31",
    "cccc": "VTBB"
  }
}

В рамках wis2box вы можете автоматически добавлять это к уведомлениям WIS2, предоставив дополнительный файл с именем gts_headers_mapping.csv, который содержит необходимую информацию для сопоставления заголовков GTS с входящими именами файлов.

Этот файл должен быть размещен в каталоге, определенном переменной WIS2BOX_HOST_DATADIR в вашем wis2box.env, и должен содержать следующие столбцы:

  • string_in_filepath: строка, которая является частью имени файла и будет использоваться для сопоставления заголовков GTS
  • TTAAii: заголовок TTAAii, который будет добавлен к уведомлению WIS2
  • CCCC: заголовок CCCC, который будет добавлен к уведомлению WIS2

Начиная с версии wis2box-1.3.0, издатели данных имеют два варианта (опционально) добавления свойств GTS к своим уведомлениям:

  1. Для файлов, загружаемых в MinIO, подготовьте файл сопоставления gts_headers_mappings.csv с необходимыми свойствами.

  2. Для ввода данных с использованием формы FM-12 SYNOP в wis2box-webapp выберите опцию Add GTS headers и введите данные вручную.

Подготовка

Убедитесь, что у вас есть доступ по SSH к вашей виртуальной машине студента и что ваш экземпляр wis2box запущен и работает.

Убедитесь, что вы подключены к MQTT брокеру вашего экземпляра wis2box с использованием MQTT Explorer. Вы можете использовать публичные учетные данные everyone/everyone для подключения к брокеру.

Убедитесь, что у вас открыт веб-браузер с панелью управления Grafana для вашего экземпляра, перейдя по адресу http://YOUR-HOST:3000.

Упражнение 1: Использование файла сопоставления для данных, загружаемых в MinIO

Первое упражнение продемонстрирует, как добавлять заголовки GTS для данных, загружаемых в MinIO, с использованием файла сопоставления с именем gts_headers_mapping.csv.

создание gts_headers_mapping.csv

Для добавления заголовков GTS к уведомлениям WIS2 требуется CSV-файл, который сопоставляет заголовки GTS с входящими именами файлов.

CSV-файл должен быть назван (точно) gts_headers_mapping.csv и размещен в каталоге, определенном переменной WIS2BOX_HOST_DATADIR в вашем wis2box.env.

Скопируйте файл exercise-materials/gts-headers-exercises/gts_headers_mapping.csv в ваш экземпляр wis2box и поместите его в каталог, определенный переменной WIS2BOX_HOST_DATADIR в вашем wis2box.env.

cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data

Применение сопоставлений

После создания файла gts_headers_mapping.csv необходимо перезапустить контейнер wis2box-management, чтобы применить изменения. Вы можете сделать это, выполнив следующую команду в вашей виртуальной машине студента:

docker restart wis2box-management

Загрузка данных с заголовками GTS

Скопируйте файл exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt в каталог, определенный переменной WIS2BOX_HOST_DATADIR в вашем wis2box.env:

cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data

Затем войдите в контейнер wis2box-management:

cd ~/wis2box
python3 wis2box-ctl.py login

Из командной строки wis2box мы можем загрузить пример файла данных A_SMRO01YRBK171200_C_EDZW_20240717120502.txt в определенный набор данных следующим образом:

wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop

Обязательно замените параметр metadata-id на правильный идентификатор для вашего набора данных.

Проверьте панель управления Grafana, чтобы убедиться, что данные были загружены корректно. Если вы видите какие-либо ПРЕДУПРЕЖДЕНИЯ или ОШИБКИ, попробуйте их исправить и повторите команду wis2box data ingest.

Просмотр заголовков GTS в уведомлении WIS2

Перейдите в MQTT Explorer и проверьте сообщение уведомления WIS2 для данных, которые вы только что загрузили.

Сообщение уведомления WIS2 должно содержать заголовки GTS, которые вы указали в файле gts_headers_mapping.csv.

Упражнение 2: Использование формы FM-12 SYNOP

При использовании формы FM-12 SYNOP в wis2box-webapp вы можете вручную добавлять заголовки GTS к своим уведомлениям WIS2, выбрав опцию "Add GTS headers" и предоставив необходимую информацию.

Для этого упражнения вы можете использовать приведенные ниже примерные данные или предоставить свои собственные:

Сообщение FM-12 SYNOP:

AAXX 03094
64400 42460 71004 10285 20245 30113 40133 8493/
    333 59005 83813 81930 87363 94966 95836=

Заголовки GTS: TTAAii=ISIH01 и CCCC=FCBB

Note

Плагин synop2bufr в wis2box преобразует сообщения FM-12 SYNOP в BUFR, поэтому TTAAii должен начинаться с IS:

  • I = Наблюдательные данные (в бинарном коде) – BUFR
  • S = Поверхностные/на уровне моря

Ручная отправка формы FM-12 SYNOP с заголовками GTS

Перейдите к форме FM-12 SYNOP в wis2box-webapp и заполните форму с приведенными выше примерными данными или используйте свои собственные.

Обязательно выберите опцию "Add GTS headers" и предоставьте необходимую информацию о заголовках GTS:

fm-12-synop-form-gts-headers.png

Предоставьте необходимый токен аутентификации и отправьте форму.

Вероятно, вы увидите сообщение об ошибке, так как эта станция отсутствует в вашем списке станций. Вам нужно будет добавить станцию "0-20000-0-64400" в ваш список станций, чтобы данные были успешно преобразованы и опубликованы.

Просмотр заголовков GTS в уведомлении WIS2

Перейдите в MQTT Explorer и проверьте сообщение уведомления WIS2 для данных, которые вы только что загрузили, чтобы убедиться, что заголовки GTS включены в уведомление.

Заключение

Поздравляем!

В этом практическом занятии вы научились: - добавлять заголовки GTS к уведомлениям WIS2 - проверять, что заголовки GTS доступны через вашу установку wis2box