Мониторинг состояния географически распределенных устройств
В этом сценарии вы настроите мониторинг состояния устройств (например, вендинговых аппаратов), подключенных к сервису Yandex IoT Core и расположенных в разных точках города. Датчики будут эмулированы с помощью сервиса Yandex Cloud Functions. Если у вас есть подключенные датчики, используйте их. Вы можете наблюдать за состоянием автоматов на карте и графиках сервиса Yandex DataLens.
Исходный код этого сценария доступен на GitHub.
Чтобы настроить мониторинг показаний датчиков в серверной комнате:
- Подготовьте облако к работе.
- Необходимые платные ресурсы.
- Создайте необходимые ресурсы Yandex IoT Core.
- Создайте эмулятор устройства в Yandex Cloud Functions.
- Создайте кластер в Yandex Managed Service for PostgreSQL.
- Создайте функцию обработки данных в Yandex Cloud Functions.
- Настройте мониторинг в Yandex DataLens
Если созданные ресурсы вам больше не нужны, удалите их.
Подготовьте облако к работе
Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.
Убедитесь, что платежный аккаунт готов к работе:
- Перейдите в консоль управления, затем войдите в Yandex.Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.
- На странице биллинга убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе
ACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог на странице облака.
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость входят:
- плата за количество сообщений сервиса Yandex IoT Core (см. тарифы);
- плата за количество вызовов функции сервиса Yandex Cloud Functions (см. тарифы);
- плата за вычислительные ресурсы и хранилище кластера в сервисе Yandex Managed Service for PostgreSQL (см. тарифы).
- плата за обмен данными с устройствами в сервисе Yandex DataLens (см. тарифы).
Создайте необходимые ресурсы Yandex IoT Core
Для работы с сервисом Yandex IoT Core вам потребуется создать реестр и устройства, которые будут обмениваться данными и командами.
Создайте реестр и настройте авторизацию по логину и паролю
Чтобы создать реестр:
-
В консоли управления выберите каталог, в котором вы выполняете сценарий.
-
Выберите сервис Yandex IoT Core.
-
Нажмите кнопку Создать реестр.
-
В поле Имя введите имя реестра. Например,
my-registry
. -
В поле Пароль задайте пароль доступа к реестру.
Пароль должен быть длиной не менее 14 символов, должен содержать строчные буквы, заглавные буквы и цифры.
Для создания пароля можно воспользоваться генератором паролей. -
Сохраните пароль локально или запомните его. Сервис не показывает пароли после создания.
-
(опционально) В поле Описание добавьте дополнительную информацию о реестре.
-
Нажмите кнопку Создать.
Вы также можете использовать авторизацию с помощью сертификатов. Подробнее об авторизации в Yandex IoT Core.
Создайте устройство и настройте авторизацию по логину и паролю
Создайте три устройства: my-device-1
, my-device-2
и my-device-3
.
Чтобы создать устройство:
-
В консоли управления выберите каталог, в котором вы выполняете сценарий.
-
Выберите сервис Yandex IoT Core.
-
Выберите реестр, созданный на предыдущем шаге.
-
В левой части окна выберите раздел Устройства.
-
Нажмите кнопку Добавить устройство.
-
В поле Имя введите имя устройства. Например,
my-device-1
. -
В поле Пароль задайте пароль доступа к устройству.
Для создания пароля можно воспользоваться генератором паролей.
Пароль должен быть длиной не менее 14 символов, должен содержать строчные буквы, заглавные буквы и цифры. -
Сохраните пароль локально или запомните его. Сервис не показывает пароли после создания.
-
(опционально) В поле Описание добавьте дополнительную информацию об устройстве.
-
(опционально) Добавьте алиасы:
-
Нажмите кнопку Добавить алиас.
-
Нажмите кнопку Изменить.
-
Заполните поля: введите алиас (например
events
) и тип топика после$devices/<deviceID>
(напримерevents
).Вы сможете использовать алиас
events
вместо топика$devices/<deviceID>/events
. -
Повторите действия для каждого добавляемого алиаса.
-
-
Нажмите кнопку Создать.
-
Повторите действия для каждого устройства, которое необходимо создать.
Вы также можете использовать авторизацию с помощью сертификатов. Подробнее об авторизации в Yandex IoT Core.
Создайте эмулятор устройств в Cloud Functions
Эмулятор отправит данные с устройств в кластер Yandex Managed Service for PostgreSQL.
Вам потребуется:
- создать и протестировать функцию эмуляции отправки данных с датчиков каждого устройства;
- создать триггер вызова функции эмуляции один раз в минуту.
Создайте функцию эмуляции отправки данных с устройства
Чтобы создать функцию:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Cloud Functions.
- В левой части окна выберите раздел Функции.
- Нажмите кнопку Создать функцию.
- В поле Имя введите имя функции. Например,
my-device-emulator-function
. - (опционально) В поле Описание добавьте дополнительную информацию о функции.
- Нажмите кнопку Создать.
- В открывшемся окне Редактор в списке Среда выполнения выберите
nodejs12
. - Выберите Способ: Редактор кода.
- В левой части окна Редактор кода нажмите кнопку Создать файл.
- В открывшемся окне Новый файл ведите имя файла
device-emulator.js
. - Нажмите кнопку Создать.
- Выберите созданный файл в левой части окна Редактор кода.
- В правой части окна Редактор кода вставьте код функции с GitHub.
- В поле Точка входа окна Редактор введите
device-emulator.handler
. - В поле Таймаут, с введите
10
. - В поле Память оставьте значение
128 МБ
. - Создайте сервисный аккаунт, от имени которого функция отправит данные в Yandex IoT Core:
- Нажмите кнопку Создать аккаунт.
- В открывшемся окне Создание сервисного аккаунта в поле Имя введите имя аккаунта. Например,
my-emulator-function-service-account
. - Добавьте роли получения списка устройств и записи в ресурсы
viewer
иiot.devices.writer
:- Нажмите на значок .
- Выберите роль в списке.
- Нажмите кнопку Создать.
- Настройте параметр Переменные окружения каждого датчика серверной комнаты:
-
Нажмите кнопку Добавить переменную окружения.
-
Заполните поля Ключ и Значение переменных окружения:
Ключ Описание Значение CASH_DRAWER_SENSOR_VALUE
Процент заполненности отсека купюр. 67.89
COIN_DRAWER_SENSOR_VALUE
Процент заполненности отсека монет. 67.89
TEMPERATURE_SENSOR_VALUE
Базовое значение температуры в отсеке выдачи товара. 10.34
POWER_SENSOR_VALUE
Базовое значение напряжения сети. 24.12
SERVICE_DOOR_SENSOR_VALUE
Показания датчика открытия сервисной дверцы. False
ITEM1_SENSOR_VALUE
Остаток товара типа 1. 50.65
ITEM2_SENSOR_VALUE
Остаток товара типа 2. 80.97
ITEM3_SENSOR_VALUE
Остаток товара типа 3. 30.33
ITEM4_SENSOR_VALUE
Остаток товара типа 4. 15.15
REGISTRY_ID
Идентификатор реестра, который вы создали См. консоль управления
сервиса Yandex IoT Core
-
- В правой верхней части окна нажмите кнопку Создать версию.
Протестируйте функцию эмуляции
Чтобы протестировать функцию:
-
(опционально) Для получения подробной информации с датчиков, подпишите реестр на топик устройства Yandex IoT Core, где
$devices/<deviceID>/events/
— топик устройства,<deviceID>
— ID устройства в сервисе:CLIВыполните команду:
$ yc iot mqtt subscribe \ --username <ID реестра> \ --password <пароль реестра> \ --topic '$devices/<ID устройства>/events' \ --qos 1
Где:
--username
и--password
— параметры для авторизации с помощью логина и пароля.--topic
— топик устройства для отправки данных.--message
— текст сообщения.--qos
— уровень качества обслуживания (QoS).
Подробнее о подписке на топики устройства в Yandex IoT Core.
-
В консоли управления выберите каталог, в котором вы выполняете сценарий.
-
Выберите сервис Cloud Functions.
-
В левой части окна выберите раздел Тестирование.
-
В списке Тег версии выберите
$latest
— последнюю созданную функцию. -
Нажмите кнопку Запустить тест.
При успешном выполнении функции в поле Состояние функции отобразится статус Выполнена и в поле Ответ функции результат:
{
"statusCode" : 200
}
Если вы подписались на топик устройства Yandex IoT Core, вы получите JSON вида:
{
"DeviceId":"arealt9f3jh445it1laq",
"TimeStamp":"2020-07-21T22:38:12Z",
"Values":[
{"Type":"Bool","Name":"Service door sensor","Value":"false"},
{"Type":"Float","Name":"Power Voltage","Value":"24.12"},
{"Type":"Float","Name":"Temperature","Value":"10.34"},
{"Type":"Float","Name":"Cash drawer fullness","Value":"67.89"},
{"Type":"Float","Name":"Coin drawer fullness","Value":"67.89"},
{"Items":[
{"Type":"Float", "Id":"1","Name":"Item 1","Fullness":"50.65"},
{"Type":"Float", "Id":"2","Name":"Item 2","Fullness":"80.97"},
{"Type":"Float", "Id":"3","Name":"Item 3","Fullness":"30.33"},
{"Type":"Float", "Id":"4","Name":"Item 4","Fullness":"15.15"},
]}
]
}
Подробнее об MQTT-топиках в сервисе Yandex IoT Core.
Создайте триггер вызова функции один раз в минуту
Чтобы создать триггер:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Cloud Functions.
- Выберите раздел Триггеры.
- Нажмите кнопку Создать триггер.
- В поле Имя введите имя триггера. Например,
my-emulator-function-trigger
. - (опционально) В поле Описание добавьте дополнительную информацию о триггере.
- Выберите Тип: Таймер.
- В поле Cron-выражение введите
* * * * ? *
(вызов один раз в минуту). - В блоке Настройки функции введите ранее заданные параметры функции:
- Функция:
my-device-emulator-function
. - Тег версии функции:
$latest
. - Сервисный аккаунт:
my-emulator-function-service-account
.
- Функция:
- (опционально) Настройте параметры блоков Настройки повторных запросов и Настройки Dead Letter Queue. Они обеспечивают сохранность данных.
- Настройки повторных запросов позволяют повторно вызывать функцию, если текущий вызов функции завершается с ошибкой.
- Настройки Dead Letter Queue позволяют перенаправлять сообщения, которые не смогли обработать получатели в обычных очередях.
В качестве DLQ очереди вы можете настроить стандартную очередь сообщений. Если вы еще не создавали очередь сообщений, создайте ее в сервисе Yandex Message Queue.
- Нажмите кнопку Создать триггер.
Создайте кластер в Yandex Managed Service for PostgreSQL
В примере используются минимальные значения параметров хоста. Для реальных задач рекомендуется выбирать хосты с гарантированной долей vCPU 100%.
Чтобы создать кластер:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex Managed Service for PostgreSQL.
- Выберите раздел Кластеры.
- Нажмите кнопку Создать кластер.
- В блоке Базовые параметры в поле Имя кластера введите, например,
my-pg-database
. - (опционально) В поле Описание добавьте дополнительную информацию о кластере.
- В списке Окружение выберите
PRODUCTION
. - В списке Версия выберите
12
. - В блоке Класс хоста в списке Платформа выберите
Intel Cascade Lake
. - Выберите тип виртуальной машины: на вкладке burstable тип b2.nano.
- В блоке Размер хранилища выберите вкладку network-hdd.
- Укажите размер хранилища 10 ГБ.
- В блоке База данных:
-
В поле Имя БД введите
db1
. -
В поле Имя пользователя введите
user1
. -
В поле Пароль задайте пароль доступа к базе.
Не забудьте сохранить пароль, он вам понадобится.
-
- Значения полей Локаль сортировки и Локаль набора символов оставьте без изменений. По умолчанию установлено значение
C
. - В блоке Сеть в списке выберите
default
. - В блоке Хосты настройте подключение к вашей базе данных через публичный IP-адрес (это необходимо для доступа к базе из Yandex Cloud Functions).
- Справа в правой части строки зоны доступа нажмите на значок .
- В открывшемся окне выберите Зону доступности. Например
ru-central1-a
. - Выберите Подсеть. Например
default-ru-central1-a
. - Включите Публичный доступ.
- Нажмите кнопку Сохранить.
- Включите Доступ из DataLens.
- Нажмите кнопку Создать кластер.
Кластер будет создаваться несколько минут. В результате отобразится окно с данными кластера.
Создайте функцию обработки данных в Yandex Cloud Functions
Функция обрабатывает данные от устройств.
Создайте функцию обработки принимаемых данных
Чтобы создать функцию:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Cloud Functions.
- В левой части окна выберите раздел Функции.
- Нажмите кнопку Создать функцию.
- В поле Имя введите имя функции. Например,
my-db-function
. - (опционально) В поле Описание добавьте дополнительную информацию о функции.
- Нажмите кнопку Создать.
- В открывшемся окне Редактор в списке Среда выполнения выберите
python37
. - Выберите Способ: нажмите на вкладку Редактор кода.
- В левой части окна Редактор кода нажмите кнопку Создать файл.
- В открывшемся окне Новый файл ведите имя файла
myfunction.py
. - Нажмите кнопку Создать.
- В левой части окна Редактор кода выберите созданный файл.
- В правой части окна вставьте код функции с GitHub.
- В поле Точка входа окна Редактор введите
myfunction.msgHandler
. - В поле Таймаут, с введите
10
. - В поле Память оставьте значение
128 МБ
. - Создайте сервисный аккаунт, от имени которого функция обработает данные, полученные от устройства:
- Нажмите кнопку Создать аккаунт.
- В открывшемся окне Создание сервисного аккаунта в поле Имя введите имя аккаунта. Например,
my-db-function-service-account
. - Добавьте роли вызова функции и изменения ресурсов
serverless.functions.invoker
иeditor
:- Нажмите на значок .
- Выберите роль в списке.
- Нажмите кнопку Создать.
- Настройте параметр Переменные окружения. Параметры подключения к базе данных вы можете посмотреть в сервисе Yandex Managed Service for PostgreSQL.
-
Нажмите кнопку Добавить переменную окружения.
-
Заполните поля Ключ и Значение переменных окружения:
Ключ Описание Значение VERBOSE_LOG
Включение и отключение записи данных. True
DB_HOSTNAME
Имя хоста в Yandex Managed Service for PostgreSQL. См. в консоли управления
сервиса Yandex Managed Service for PostgreSQLDB_PORT
Порт подключения к кластеру в Yandex Managed Service for PostgreSQL. 6432
DB_NAME
Имя кластера в Yandex Managed Service for PostgreSQL. db1
DB_USER
Имя пользователя для подключения к кластеру в Yandex Managed Service for PostgreSQL. user1
DB_PASSWORD
Пароль подключения к кластеру в Yandex Managed Service for PostgreSQL. Пароль, который вы задали в Yandex Managed Service for PostgreSQL.
-
- В правой верхней части окна нажмите кнопку Создать версию.
Протестируйте функцию обработки данных
Чтобы протестировать функцию:
-
В консоли управления выберите каталог, в котором вы выполняете сценарий.
-
Выберите сервис Cloud Functions.
-
В левой части окна выберите раздел Тестирование.
-
В списке Тег версии выберите
$latest
— последнюю созданную функцию. -
В поле Входные данные вставьте данные:
{ "messages": [ { "event_metadata": { "event_id": "160d239876d9714800", "event_type": "yandex.cloud.events.iot.IoTMessage", "created_at": "2020-05-08T19:16:21.267616072Z", "folder_id": "b112345678910" }, "details": { "registry_id": "are1234567890", "device_id": "are0987654321", "mqtt_topic": "$devices/are0987654321/events", "payload": "ewogICAgICAgICAgICAiRGV2aWNlSWQiOiJhcmU1NzBrZTA1N29pcjg1bDlmciIsCiAgICAgICAgICAgICJUaW1lU3RhbXAiOiIyMDIwLTA2LTExVDExOjA3OjIwWiIsCiAgICAgICAgICAgICJWYWx1ZXMiOlsKICAgICAgICAgICAgICAgIHsiVHlwZSI6IkJvb2wiLCJOYW1lIjoiU2VydmljZSBkb29yIHNlbnNvciIsIlZhbHVlIjoiRmFsc2UifSwKICAgICAgICAgICAgICAgIHsiVHlwZSI6IkZsb2F0IiwiTmFtZSI6IlBvd2VyIFZvbHRhZ2UiLCJWYWx1ZSI6IjI1LjA2In0sCiAgICAgICAgICAgICAgICB7IlR5cGUiOiJGbG9hdCIsIk5hbWUiOiJUZW1wZXJhdHVyZSIsIlZhbHVlIjoiMTEuMjEifSwKICAgICAgICAgICAgICAgIHsiVHlwZSI6IkZsb2F0IiwiTmFtZSI6IkNhc2ggZHJhd2VyIGZ1bGxuZXNzIiwiVmFsdWUiOiI2Ny44OSJ9LAogICAgICAgICAgICAgICAgeyJJdGVtcyI6WwogICAgICAgICAgICAgICAgICAgIHsiVHlwZSI6IkZsb2F0IiwgIklkIjoiMSIsIk5hbWUiOiJJdGVtIDEiLCJGdWxsbmVzcyI6IjUwLjY1In0sCiAgICAgICAgICAgICAgICAgICAgeyJUeXBlIjoiRmxvYXQiLCAiSWQiOiIyIiwiTmFtZSI6Ikl0ZW0gMiIsIkZ1bGxuZXNzIjoiODAuOTcifSwKICAgICAgICAgICAgICAgICAgICB7IlR5cGUiOiJGbG9hdCIsICJJZCI6IjMiLCJOYW1lIjoiSXRlbSAzIiwiRnVsbG5lc3MiOiIzMC4zMyJ9LAogICAgICAgICAgICAgICAgICAgIHsiVHlwZSI6IkZsb2F0IiwgIklkIjoiNCIsIk5hbWUiOiJJdGVtIDQiLCJGdWxsbmVzcyI6IjE1LjE1In0KICAgICAgICAgICAgICAgIF19CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0=" } } ] }
-
Нажмите кнопку Запустить тест.
При успешном выполнении функции в поле Состояние функции отобразится статус Выполнена, а в поле Ответ функции результат:
{
"statusCode" : 200 ,
"headers" : {
"Content-Type" : "text/plain"
},
"isBase64Encoded" : false
}
Просмотрите результат обработки данных в Managed Service for PostgreSQL
Чтобы просмотреть результат обработки данных:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex Managed Service for PostgreSQL.
- Выберите раздел SQL.
В правой части окна отобразится таблица с результатами обработки данных.
Создайте триггер вызова функции обработки данных
Триггер вызовет функцию, когда в топике устройства появятся сообщения.
Чтобы создать триггер:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Cloud Functions.
- Выберите раздел Триггеры.
- Нажмите кнопку Создать триггер.
- В поле Имя введите имя триггера. Например,
my-db-func-trigger
. - (опционально) В поле Описание добавьте дополнительную информацию о триггере.
- Выберите Тип: Yandex IoT Core.
- В блоке Настройки сообщений Yandex IoT Core введите ранее заданные параметры реестра и устройства:
-
Реестр:
my-registry
. -
Устройство:
Любое устройство
. -
MQTT-топик:
$devices/#
.Подробнее об MQTT-топиках в сервисе Yandex IoT Core.
-
- В блоке Настройки функции введите ранее заданные параметры функции:
- Функция:
my-database-function
. - Тег версии функции:
$latest
. - Сервисный аккаунт:
my-db-func-trigger-service-account
.
- Функция:
- (опционально) Настройте параметры блоков Настройки повторных запросов и Настройки Dead Letter Queue. Они обеспечивают сохранность данных.
- Настройки повторных запросов позволяют повторно вызывать функцию, если текущий вызов функции завершается с ошибкой.
- Настройки Dead Letter Queue позволяют перенаправлять сообщения, которые не смогли обработать получатели в обычных очередях.
В качестве DLQ очереди вы можете настроить стандартную очередь сообщений. Если вы еще не создавали очередь сообщений, создайте ее в сервисе Yandex Message Queue.
- Нажмите кнопку Создать триггер.
Просмотрите результат работы триггера в Managed Service for PostgreSQL
Через некоторое время после создания триггера вы можете проверить, как он работает.
Чтобы просмотреть результат работы триггера:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex Managed Service for PostgreSQL.
- Выберите раздел SQL.
В правой части окна отобразится обновленная таблица с большим количеством данных.
Настройте мониторинг в Yandex DataLens
Настройте подключение к Managed Service for PostgreSQL
Чтобы настроить подключение Yandex DataLens к Managed Service for PostgreSQL:
-
В консоли управления выберите каталог, в котором вы выполняете сценарий.
-
Выберите сервис Yandex DataLens.
-
Нажмите кнопку Создать подключение.
-
Выберите коннектор PostgreSQL.
При подключении к внешнему источнику данных (который не является ресурсом Yandex.Cloud) предоставьте доступ к источнику для диапазонов IP-адресов сервиса DataLens.
-
Задайте имя подключения:
MyPGConnection
. -
Выберите Подключение: Выбрать в облаке.
-
В списке Кластер выберите
my-pg-database
. -
В списке Имя хоста выберите хост, который вы создали в сервисе Yandex Managed Service for PostgreSQL.
-
В поле Порт введите
6432
. -
В списке Имя базы данных выберите
db1
. -
В списке Имя пользователя выберите
user1
. -
В поле Пароль введите пароль, который вы задали для доступа к кластеру в сервисе Yandex Managed Service for PostgreSQL.
-
Нажмите кнопку Создать. Подключение появится в списке.
Создайте датасет
Чтобы создать датасет:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex DataLens.
- Нажмите кнопку Создать датасет.
- В левой части экрана нажмите Добавить.
- Выберите подключение
MyPGConnection
. - В левой части окна выберите таблицы
public.iot_events
иpublic.iot_position
, перетащите их вправо. - Нажмите кнопку Сохранить.
- В открывшемся окне задайте имя датасета
My-pg-dataset
и нажмите Создать.
Датасет появится в списке.
Создайте чарт по показателям температуры и напряжения сети
Чтобы создать чарт по показателям температуры и напряжения сети:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex DataLens.
- Нажмите кнопку Создать чарт.
- В разделе Датасет выберите датасет
My-pg-dataset
, который вы создали ранее. - Выберите тип чарта Линейная диаграмма.
- Из блока Измерения в левой части окна перетащите измерения в блок Линейная диаграмма:
-
event_datetime
в секцию X;В нижней части графика по оси X отобразится временная шкала.
-
temperature
иpower_voltage
в секцию Y.По оси Y в виде графика отобразятся значения температуры и напряжения сети.
-
- Нажмите кнопку Сохранить.
- В открывшемся окне задайте имя чарта или используйте сгенерированное имя
My-pg-dataset — Линейная диаграмма
и нажмите Сохранить.
Создайте чарт с картой
Чтобы создать чарт с картой:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex DataLens.
- В левой части окна выберите раздел Датасеты.
- В списке выберите датасет
My-pg-dataset
. - Выберите вкладку Поля.
- В правой части окна нажмите кнопку Добавить поле.
- В открывшемся окне в поле Название поля введите
Position
. - В поле Формула вставьте
GEOPOINT([latitude],[longitude])
. - Нажмите кнопку Создать.
- Нажмите кнопку Сохранить.
- В правом верхнем углу нажмите кнопку Создать чарт.
- Выберите тип чарта Карта.
- Из блока Измерения в левой части окна перетащите измерения в блок Карта:
-
Position
в секцию Геоточки; -
item1_fullness
,item1_fullness
,item1_fullness
,item1_fullness
,cash_drawer
иcoin_drawer
в секцию Тултипы.В правой части окна отобразится масштабируемая карта, на которой вендинговые автоматы отмечены точками на карте, а тултипы — строками легенды.
-
- Нажмите кнопку Сохранить.
- В открывшемся окне задайте имя чарта или используйте сгенерированное имя
My-pg-dataset — Карта
и нажмите Сохранить.
Создайте дашборд
Чтобы создать дашборд:
- В консоли управления выберите каталог, в котором вы выполняете сценарий.
- Выберите сервис Yandex DataLens.
- Нажмите кнопку Создать дашборд.
- В открывшемся окне введите название дашборда
MyDash
. - Добавьте на дашборд чарты
My-pg-dataset — Карта
иMy-pg-dataset — Линейная диаграмма
, которые вы создали ранее:-
В верхней части окна в раскрывающемся списке Добавить выберите Чарт.
-
В раскрывающемся списке Чарт выберите чарт
My-pg-dataset — Карта
.Имя чарта подставится в поле Название.
-
(опционально) В поле Описание введите описание чарта.
-
Нажмите кнопку Добавить.
-
Повторите действия — добавьте чарт
My-pg-dataset — Линейная диаграмма
.
-
- Настройте селектор:
- В верхней части окна в раскрывающемся списке Добавить выберите Селектор.
- В поле Название введите Устройство.
- В списке Датасет выберите
My-pg-dataset
. - В списке Поле выберите
device_id
. - В списке Значение по умолчанию выберите идентификатор устройства, которое вы создали в сервисе Yandex IoT Core.
- Нажмите кнопку Добавить
- Настройте связи:
-
В верхней части окна нажмите кнопку Связи.
-
В верхней части открывшегося окна в списке выберите чарт
My-pg-dataset — Точечная карта
. -
В раскрывающемся списке Вх.связь выберите
Игнор
.Для карты параметр Связи не действует.
-
Нажмите кнопку Сохранить.
-
В верхней части окна в списке выберите чарт
My-pg-dataset — Линейная диаграмма
. -
В раскрывающемся списке Вх.связь выберите
Вх.связь
. -
Нажмите кнопку Сохранить.
-
- Нажмите кнопку Сохранить.
Подробнее о дашбордах сервиса Yandex DataLens