Добавление заголовков 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: строка, которая является частью имени файла и будет использоваться для сопоставления заголовков GTSTTAAii: заголовок TTAAii, который будет добавлен к уведомлению WIS2CCCC: заголовок CCCC, который будет добавлен к уведомлению WIS2
Начиная с версии wis2box-1.3.0, издатели данных имеют два варианта (опционально) добавления свойств GTS к своим уведомлениям:
-
Для файлов, загружаемых в MinIO, подготовьте файл сопоставления
gts_headers_mappings.csvс необходимыми свойствами. -
Для ввода данных с использованием формы 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:

Предоставьте необходимый токен аутентификации и отправьте форму.
Вероятно, вы увидите сообщение об ошибке, так как эта станция отсутствует в вашем списке станций. Вам нужно будет добавить станцию "0-20000-0-64400" в ваш список станций, чтобы данные были успешно преобразованы и опубликованы.
Просмотр заголовков GTS в уведомлении WIS2
Перейдите в MQTT Explorer и проверьте сообщение уведомления WIS2 для данных, которые вы только что загрузили, чтобы убедиться, что заголовки GTS включены в уведомление.
Заключение
Поздравляем!
В этом практическом занятии вы научились: - добавлять заголовки GTS к уведомлениям WIS2 - проверять, что заголовки GTS доступны через вашу установку wis2box