# Анализатор потока данных

**Data Stream Analyzer** является специализированным инструментом устранения неполадок, который предоставляет диагностику передачи данных IoT-устройств в реальном времени. Когда ваши устройства не передают данные так, как ожидается, этот мощный инструмент позволяет немедленно выполнять проверку и отладку по всему вашему автопарку независимо от производителя или протокола. Для эффективного устранения неполадок вы можете:

* Проводить проверки состояния передачи данных устройства в реальном времени без участия поставщика
* Отлаживать конкретные атрибуты с помощью целенаправленного анализа потока данных
* Проверять целостность данных с помощью комплексного журнала значений (включая значения null)
* Проверять процессы преобразования данных и вычисляемые атрибуты
* Получать доступ к дампам TCP и журналам узлов для углубленной технической диагностики
* Сопоставлять несколько источников данных для выявления проблем интеграции

В отличие от традиционных решений, привязанных к конкретному поставщику, **Data Stream Analyzer** обеспечивает универсальную совместимость устройств и возможности удаленного устранения неполадок через единый технический интерфейс, значительно сокращая время и сложность диагностики устройств.

{% hint style="info" %}
Чтобы открыть Data Stream Analyzer:

1. Откройте IoT Logic. Стартовая страница откроется с **Созданные потоки** таблица.
2. Нажмите на имя потока, который вы хотите проанализировать, или откройте его **"..."** меню и выберите **Редактировать**. Поток откроется на холсте.
3. Нажмите **Data Analyzer** вкладка в верхней части холста.
   {% endhint %}

![Представление Data Analyzer](/files/d2b4ca0a20e701aae0b62d1c08859a1290a80236)

Давайте подробнее рассмотрим все возможности и функции, которые вы найдете здесь.

## Основная рабочая область

Основные элементы управления инструмента Analyzer собраны в верхнем меню.

**Поток данных**: Этот список позволяет вам выбрать уже созданный поток из вашей учетной записи. Это основной параметр группировки, поэтому вы сможете искать только устройства и атрибуты, которые относятся к выбранному потоку.

**Режим**: В инструменте есть два режима, и отображение инструмента зависит от выбранного режима.

* **Табличный вид** (по умолчанию): Этот режим отображает декодированные данные с устройств в табличном формате.
* **Журналы потока** (скоро будет доступно): Этот режим показывает общие журналы, дампы TCP и журналы узлов в выбранном потоке. Он будет добавлен в следующих итерациях.

{% hint style="info" %}
Приведенные выше параметры в данный момент неактивны и содержат значения по умолчанию. Они станут доступны с дальнейшим расширением функциональности IoT Logic. Следите за обновлениями!
{% endhint %}

Нажатие на **Кнопка** «Закрыть» вернет вас на главный экран IoT Logic.

Теперь давайте подробнее рассмотрим разделы интерфейса и доступную в них информацию.

## Табличный вид

### Верхняя панель меню

![Элементы управления верхней панели меню](/files/4f72abcfdc685278a4577194bc3ce5737c1c00de)

В верхнем меню находятся основные элементы управления для табличного вида.

* **Переключатель Exclude null**: Этот параметр позволяет переключаться между двумя режимами отображения данных:
  * **Выключено** — Отображает все значения на основе пакетов, полученных от устройства, включая те, где у выбранного атрибута значения null (отсутствуют). Этот режим предоставляет полное представление обо всех данных пакета.
  * **Включено** — Отображает только те пакеты, где информация действительно была получена от устройств для выбранного атрибута, с допустимыми, не-null значениями. Другими словами, он отфильтровывает неполные данные.
* **Глубина**: Этот параметр отвечает за глубину исторических данных и определяет диапазон недавних данных для отображения. Например, на сколько шагов в прошлое нам нужно пройти, чтобы показать значения атрибутов. Максимум — 12 шагов в прошлое. Вы можете выбрать, сколько шагов хотите видеть, и проверить, как меняются значения. Например, если вы установите depth=4, вы увидите значения за три шага из прошлого \[3], \[2], \[1] и последние полученные значения \[0].
* **Воспроизведение/Пауза**: Эта кнопка позволяет начать получение обновлений значений в таблице в реальном времени или приостановить обновления.
* **Поиск значения**: Это поле используется для поиска конкретного значения среди всех атрибутов в таблице. Максимум — 100 символов для поиска. Например, если вы проверяете работу событий и ищете конкретное событие, которое должно быть сгенерировано устройством, искомое значение будет выделено.
* **Экспорт**: Вы можете экспортировать все журналы с помощью кнопки экспорта, чтобы поделиться информацией с другими специалистами. Информация будет в формате JSON, чтобы ее было легче читать.

### Блок устройств и атрибутов

Левый блок меню содержит список устройств и атрибутов, относящихся к выбранному потоку. Чтобы переключаться между списками, используйте кнопки **Устройства** и **Атрибут** в верхней части списка. Вы можете выполнять поиск устройств по ID и атрибутов по их названиям.

{% columns %}
{% column %}
![Добавление устройств для мониторинга](/files/fa2704b23f7e7ed2c92480ecdb7c82e9d20481f0)
{% endcolumn %}

{% column %}
![Добавление атрибутов для мониторинга](/files/b15671d4d26970cfee54301f64bc1315ada36ce3)
{% endcolumn %}
{% endcolumns %}

Вы можете выбрать до 10 устройств. После выбора будут отображаться все атрибуты, поддерживаемые этими устройствами, что позволит вам выбрать любое количество для отображения в таблице. Будут доступны только атрибуты, относящиеся к выбранным устройствам.

### Таблица последних значений атрибутов

В этой таблице будет отображаться информация о полученных значениях для выбранных устройств и атрибутов.

![Пример табличного вида](/files/8d846d23b75c9e50feb4952db95b2f1d4e333b4c)

Таблица предоставляет информацию следующим образом:

* Строка заголовка таблицы представляет собой список устройств, выбранных для мониторинга. Эти устройства станут столбцами, которые показывают значения от каждого устройства.
* Строки с названиями атрибутов будут группировать данные по выбранному атрибуту. Ниже будет отображаться информация, собранная в выбранной глубине для этого атрибута по каждому устройству.\
  Первый столбец в строках под названием атрибута с числами отвечает за глубину значений. Где 0 — текущий, 1 — предыдущий и так далее.

Когда вы наведете курсор мыши на любое значение, вы увидите дополнительные данные о том, когда этот атрибут был сгенерирован устройством и когда он был получен платформой:

![Пример временной метки значения](/files/0016a240901c5c06ad8638d30219cfd83d788950)

После получения новых значений от любого устройства они будут подсвечены зеленым примерно на 2 секунды. Таким образом вы увидите, какой атрибут на каком устройстве был обновлен. Щелчок по строке устройства развернет ее, показывая исторические значения, ограниченные заданным **Глубина**.

#### Чтение таблицы

Давайте интерпретируем значения таблицы на примере случая, показанного на скриншоте выше, и посмотрим, какие выводы мы можем сделать:

* Device **#1Teltonika FMB001** не возвращает никаких значений. Это может означать, что устройство не может предоставлять именно этот тип данных. Проверьте, есть ли для этого устройства другие атрибуты со значениями; если нет, убедитесь, что устройство правильно подключено.
* Устройства **#2Teltonika FMB001** - **#5Teltonika FMB001** возвращают значения стабильно, что указывает на их корректное подключение. Их местоположение можно определить с помощью атрибутов **широта** и **долгота** . Поскольку их координаты остаются неизменными на протяжении нескольких последних **Глубина** уровней, устройства неподвижны. Это дополнительно подтверждается атрибутом **движение** который имеет значение **0**. На основании этих наблюдений данные выглядят точными и обновляются в реальном времени.
* Device **STARLINK** предоставил значения только для одного **Глубина** уровня, что указывает на то, что он был подключен недавно. Отсутствие значений для атрибута **движение** вероятно, означает, что у этого устройства, скорее всего, нет соответствующего датчика.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://navixy.com/docs/user/ru/guide/account/iot-logic/data-stream-analyzer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
