[Документация Yandex Cloud](../../../index.md) > [Monium](../../index.md) > Визуализация данных > Работа с дашбордами > Импорт дашборда из Grafana

# Импорт дашборда из Grafana

Дашборды Grafana можно перенести в Monium без ручной настройки каждого виджета. Например, можно перенести дашборды с метриками Prometheus для мониторинга кластеров Kubernetes и приложений в них.

Monium объединяет сбор, хранение и анализ метрик, логов и трейсов в одной платформе. На платформе доступны визуализация данных, алертинг, контроль выполнения SLO и другие возможности Observability. Для работы с метриками в формате Prometheus доступен [Yandex Managed Service for Prometheus®](../prometheus/index.md), который поддерживает [запись метрик](../prometheus/ingestion/remote-write.md) по протоколу Remote Write.

Если вы еще не работаете с Monium, настройте [передачу метрик](../../collector/index.md) из вашего приложения или попробуйте [демо-приложение в Kubernetes](../../collector/otel-k8s-example.md).

## Особенности импорта {#import-specific}

При импорте учитывайте следующее:

* Метрики не переносятся вместе с дашбордом. До импорта настройте их передачу в Monium.
* Monium автоматически подберет [шарды](*shard) с метриками из запросов дашборда. Выберите один из них для нужного окружения и приложения.
* Monium преобразует поддерживаемые запросы и создает виджеты на основе панелей Grafana. Из-за [ограничений преобразования](#conversion-specifics) некоторые элементы могут потребовать ручной настройки.
* После [сохранения результата](#review-and-save-dashboard) в выбранном проекте создается новый [дашборд](../../concepts/visualization/dashboard.md). Исходный дашборд в Grafana не изменяется.

## Подготовка к импорту {#before-you-begin}

1. [Экспортируйте](https://grafana.com/docs/grafana/latest/visualizations/dashboards/share-dashboards-panels/#export-a-dashboard-as-code) конфигурацию дашборда из Grafana в формате JSON.
1. Убедитесь, что нужные метрики доступны в проекте Monium:

   1. В интерфейсе [Monium](https://kz.monium.yandex.cloud) в верхней панели нажмите название текущего проекта и выберите проект, в который поступают метрики.
   1. Откройте **Поставка и хранение** → **Шарды** и выберите шард.
   1. На вкладке **Общая информация** справа выберите **Метрики шарда**. Проверьте, что в шарде есть метрики из запросов исходного дашборда.
   1. Вернитесь на страницу шарда и откройте **Графики шарда**. Выберите нужные метрики и временной интервал. Убедитесь, что на графиках есть данные. Подробнее — в [инструкции](../../collector/shard.md#open).

1. Убедитесь, что у вашей учетной записи есть разрешения следующих [ролей](../../security/index.md#grant-roles) в выбранном проекте:

   * [monium.dashboards.editor](../../security/index.md#monium-dashboards-editor) — создание и сохранение дашбордов.
   * [monium.metrics.reader](../../security/index.md#monium-metrics-reader) — чтение метрик, их значений и меток.
   * [monium.shards.viewer](../../security/index.md#monium-shards-viewer) — просмотр информации о шардах, кластерах и сервисах.

   Все эти разрешения также входят в роль [monium.editor](../../security/index.md#monium-editor).

## Импорт дашборда {#dashboard-import}

Для импорта дашборда:

{% list tabs group=instructions %}

- Интерфейс Monium {#console}

  1. На главной странице [Monium](https://kz.monium.yandex.cloud) слева выберите ![alt](../../../_assets/console-icons/layout-cells-large.svg) **Дашборды**.
  1. В верхней панели нажмите название текущего проекта и выберите проект с нужными метриками.
  1. Перейдите на вкладку **Дашборды проекта** и нажмите **Импортировать**.
  1. В окне **Импортирование дашборда** выберите способ загрузки:

     * **Из файла** — нажмите **Загрузить файл** и выберите файл с расширением `.json`.
     * **JSON** — вставьте конфигурацию в редактор. Если обнаружены ошибки, исправьте JSON. При успешной проверке появится сообщение **Валидация пройдена**.

  1. Дождитесь подбора шардов. Monium сопоставит метрики из запросов дашборда с метриками в шардах выбранного проекта и предложит подходящие варианты.
  1. В поле **Шард** выберите вариант для нужного кластера и сервиса. Рядом с каждым вариантом показан процент метрик исходного дашборда, найденных в шарде.

     Процент совпадений помогает оценить полноту набора метрик, но не гарантирует [совместимость запросов и виджетов](#conversion-specifics).

  1. Нажмите **Импортировать и конвертировать дашборд**.

{% endlist %}

Откроется редактор нового дашборда с импортированными виджетами и параметрами.

Если нужные метрики распределены по нескольким шардам или часть метрик не найдена, некоторые графики потребуется настроить вручную.

## Проверка и сохранение результата {#review-and-save-dashboard}

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

{% list tabs group=instructions %}

- Интерфейс Monium {#console}

  1. В сообщении над дашбордом нажмите **Логи конверсии**.
  1. Проверьте [сообщения в логах конверсии](#conversion-logs), в том числе об автоматически подобранных метриках и пропущенных элементах.
  1. Сравните данные в Grafana и Monium за один и тот же период при одинаковых значениях параметров. Проверьте единицы измерения, а также фильтры и группировки в запросах.
  1. При необходимости [исправьте запросы и настройки виджетов](create.md#settings).
  1. Вверху справа нажмите **Сохранить**, введите имя дашборда и нажмите **Сохранить**.

{% endlist %}

{% note warning %}

Дашборд не сохраняется автоматически. Если закрыть редактор без сохранения, результат импорта будет потерян. Логи конверсии доступны только до сохранения дашборда или выхода из редактора.

{% endnote %}

## Правила преобразования {#conversion-specifics}

Автоматическое преобразование запросов поддерживается для источников данных Monium и Prometheus. Запросы к InfluxDB, Graphite и CloudWatch, а также SQL-запросы остаются на исходном языке. Перепишите их на [языке запросов](../../concepts/querying.md) Monium.

Если имена метрик в Grafana и Monium различаются, при импорте подбираются метрики с похожими именами. Найдите такие замены в логах конверсии и проверьте смысл и единицы измерения выбранных метрик.

Для некоторых типов панелей Grafana в Monium используются другие типы визуализации:

#|
|| **Тип панели Grafana** | **Результат в Monium** ||
|| `gauge`, `bargauge`, `barchart`, `table` | **Плитка** ||
|| `heatmap`, `histogram` | **Область** ||
|| `state-timeline` | **Линия** ||
|| `logs`, `alertlist` и некоторые другие неподдерживаемые панели | Текстовая заглушка ||
|#

[Сопоставления значений](https://grafana.com/docs/grafana/latest/visualizations/panels-visualizations/configure-value-mappings/) с текстом и цветом (value mappings), например `1` → `UP`, не переносятся.

## Сообщения в логах конверсии {#conversion-logs}

Логи конверсии показывают результат преобразования элементов дашборда. Если отдельные элементы не удалось преобразовать, дашборд может импортироваться без них. Проверьте сообщения в логах и при необходимости исправьте или восстановите эти элементы вручную.

Столбец **Уровень** помогает оценить результат:

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

Содержание остальных столбцов:

* **Тип** — что произошло при преобразовании, например **Метрика не найдена**.
* **Сообщение** — подробное описание результата или проблемы.
* **Виджет** — виджет, к которому относится сообщение, или путь к элементу в исходном JSON.

Сообщения одного типа могут иметь разные уровни. Чтобы понять, нужны ли исправления, учитывайте и уровень, и текст сообщения.

### Метрики и метки {#metric-diagnostics}

#|
|| **Тип** | **Причина** | **Что делать** ||
|| **Метрика не найдена** | В выбранном шарде не найдена метрика с именем, указанным в запросе. | Проверьте шард, имя метрики и поступление ее значений. Исправьте имя в запросе или повторите импорт с другим шардом. ||
|| **Метка не найдена** | Имя метки из запроса не найдено среди меток выбранного шарда. | Проверьте метки метрики и исправьте имя в фильтрах или группировках запроса. ||
|| **Метрика подобрана автоматически** | Подобрана метрика с похожим именем, например с другим регистром букв, разделителями или суффиксом единицы измерения. | Сравните смысл, единицы измерения и значения метрик. При необходимости исправьте запрос. ||
|| **Правило предвычисления** | Запрос использует результат [правила предвычисления](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/#recording-rules) (recording rule) Prometheus. Такого временного ряда может не быть в Monium. | Настройте передачу результата правила в Monium или воспроизведите вычисление в запросе. Переименование метрики не заменяет вычисление. ||
|| **Служебная метрика сбора** | Запрос использует служебную метрику Prometheus, например `up` или метрику с префиксом `scrape_`. Такие метрики [создаются при опросе](https://prometheus.io/docs/concepts/jobs_instances/#automatically-generated-labels-and-time-series) источников и могут отсутствовать в Monium. | Проверьте передачу служебных метрик. Если они не собираются, подберите доступную метрику состояния или сбора данных и измените запрос с учетом ее смысла. ||
|| **Непроверенное имя** | Имя содержит переменную шаблона без подставленного значения, поэтому существование метрики или метки не проверено. | Проверьте параметры дашборда и запрос после подстановки значений. При необходимости исправьте шаблон имени. ||
|#

### Запросы и виджеты {#widget-diagnostics}

#|
|| **Тип** | **Причина** | **Что делать** ||
|| **Неподдерживаемый запрос** | Конструкция запроса или источник данных не поддерживается. Запрос оставлен на исходном языке либо пропущен вместе с виджетом. | Прочитайте подробности сообщения и перепишите запрос на языке запросов Monium. Если виджет пропущен, создайте его вручную. ||
|| **Неподдерживаемый виджет** | У панели Grafana нет прямого аналога в Monium. Она заменена виджетом другого типа или текстовой заглушкой либо пропущена. | Выберите подходящий тип виджета и настройте его вручную. ||
|| **Приближенное преобразование** | Запрос или настройки отображения перенесены с отличиями от исходных. | Проверьте указанные в сообщении отличия, значения на графике и отображение данных. При необходимости измените запрос или настройки виджета. ||
|#

### Другие сообщения {#other-diagnostics}

#|
|| **Тип** | **Причина** | **Что делать** ||
|| **Цель переименования не найдена** | Правило переименования указывает на метрику, которой нет в выбранном шарде. | Проверьте имя целевой метрики и исправьте запрос в импортированном дашборде. ||
|| **Неиспользованное правило переименования** | Правило не соответствует ни одной метрике в исходном дашборде. | Проверьте запросы и данные на импортированном дашборде. ||
|| **Не указан** | Тип сообщения не задан. | Ориентируйтесь на уровень, текст сообщения и указанный виджет. ||
|#

Правила переименования — внутренние настройки API конвертации. При импорте дашборда их нельзя задать или изменить.

## Если импорт не выполняется {#troubleshooting}

#|
|| **Проблема** | **Что делать** ||
|| Некорректный JSON | Проверьте синтаксис. JSON должен содержать объект дашборда, а не массив или строку. Для загрузки из файла используйте расширение `.json`. ||
|| В дашборде нет метрик для подбора шарда | Проверьте, что экспортирован нужный дашборд и его запросы содержат метрики. ||
|| Нет шардов для проверки | Проверьте выбранный проект и наличие в нем шардов с метриками. ||
|| Метрики дашборда не найдены | Проверьте, что метрики из запросов поступают в выбранный проект. Без подходящего шарда запустить преобразование нельзя. ||
|| Каталоги шардов недоступны или произошла ошибка поиска | Повторите попытку позже. Если рядом с ошибкой есть кнопка повтора, нажмите ее. ||
|| Не удалось импортировать дашборд | Прочитайте сообщение об ошибке. Исправьте исходную конфигурацию, если причина в ней, или повторите попытку позже. ||
|#

#### Полезные ссылки {#see-also}

* [Дашборд в Monium](../../concepts/visualization/dashboard.md)
* [Добавление параметра дашборда](add-parameters.md)
* [Копирование дашборда](copy.md)

[*shard]: # Основные понятия Monium
          
          В разделе описаны понятия, которые используются в сервисе и документации Monium.
          
          ## Общие термины Monium {#common-terms}
          
          ### Быстрые ссылки {#project-menu}
          
          _Быстрые ссылки_ — набор ссылок в интерфейсе Monium, который можно настроить для каждого [проекта](#project) через интерфейс или API.
          
          Подробнее о настройке — в разделе [Ссылки](../../concepts/visualization/context-links.md#quick-links).
          
          ### Временной ряд (Timeseries) {#timeseries}
          
          _Временной ряд_ (Timeseries) — упорядоченное по времени множество значений какой-либо величины с указанием времени каждого измерения: `[(временная_метка_1, значение_1), (временная_метка_2, значение_2), ...]`. Подробнее в разделе [Модель данных в Monium](../../concepts/data-model.md).
          
          ### График {#graph}
          
          1. Визуализация набора [метрик](#metric).
          1. Элемент [дашборда](#dashboard).
          
          ### Алерт {#alert}
          
          _Алерт_ — объект конфигурации Monium, который периодически вычисляет запрос или выражение и переводит состояние в один из статусов, например `OK`, `Warning`, `Alarm` или `No data`. Алерт используют для контроля состояния метрик и уведомления о проблемах. Подробнее в разделе [Алерт](../../concepts/alerting/alert.md).
          
          ### Мультиалерт {#multi-alert}
          
          _Мультиалерт_ — алерт, который автоматически раскладывается на несколько подалертов по значениям одной или нескольких [меток](#label). Каждый подалерт вычисляется независимо. Подробнее в разделе [Мультиалерты](../../concepts/alerting/alert.md#multi-alerts).
          
          ### Подалерт {#subalert}
          
          _Подалерт_ — автоматически создаваемый алерт, который входит в состав мультиалерта. Подалерты появляются при разложении мультиалерта по выбранным меткам, например по `host` или по комбинации `host` и `disk`. Параметры подалерта определяются родительским мультиалертом. Подробнее в разделе [Мультиалерты](../../concepts/alerting/alert.md#multi-alerts).
          
          ### Мьют {#mute}
          
          _Мьют_ — правило, которое временно отключает уведомления для алертов, мультиалертов или подалертов, подходящих под заданные селекторы. Мьют не останавливает вычисление алерта, а только подавляет отправку уведомлений. Подробнее в разделе [Мьюты](../../alerts/mutes.md).
          
          ### Дашборд (Dashboard) {#dashboard}
          
          _Дашборд (Dashboard)_ — объект конфигурации Monium, содержащий набор [графиков](#graph) и настройки их отображения.
          
          ### Кластер (Cluster) {#cluster}
          
          _Кластер (Cluster)_ — объект конфигурации Monium, определяющий множество хостов, которые Monium будет опрашивать для сбора метрик при использовании pull-режима передачи метрик. Как правило, кластер соответствует окружению (инсталляции) клиентского приложения, которое передает метрики. Например, боевой и тестовый кластеры, кластеры для разных регионов.
          
          ### Метка (Label) {#label}
          
          _Метка (Label)_ — пара строк в формате `<имя>="<значение>"`, например, `host="monitoring-kfront-man-00"` или `code="200"`. Метки описывают различные срезы, по которым необходимо визуализировать метрики, передаваемые в Monium. Набор меток идентифицирует [метрику](#metric). Подробнее в разделе [Модель данных в Monium](../../concepts/data-model.md).
          
          ### Метрика {#metric}
          
          _Метрика (Metric)_ — [временной ряд](#timeseries) и идентифицирующий его набор [меток](#label), записанный в фигурных скобках.
          
          ### Параметр дашборда {#dashboard-param}
          
          _Параметры дашборда_ позволяют создавать интерактивные дашборды, содержание которых изменяется в зависимости от выбора пользователя. Например, дашборд, показывающий сводную информацию о состоянии виртуальной машины, можно параметризовать идентификатором виртуальной машины.
          
          ### Проект (Project) {#project}
          
          _Проект (Project)_ — верхнеуровневый объект конфигурации Monium с данными наблюдения. Используется для логического объединения нескольких связанных сервисов и назначения прав доступа к телеметрии командам проекта. Проект может содержать данные по ресурсам отдельного [каталога](../../../resource-manager/concepts/resources-hierarchy.md#folder), тогда идентификатор проекта формируется как `folder__<идентификатор_каталога>`. Проект позволяет ограничить доступ к данным с помощью назначения [ролей](../../../iam/concepts/access-control/roles.md).
          
          ### Прореживание {#downsampling}
          
          1. _Прореживание данных при чтении_ — механизм, ограничивающий количество отображаемых точек на [графике](#graph). Подробнее в разделе [Прореживание данных при чтении](../../concepts/decimation.md#reading-decimation).
          
          1. _Прореживание исторических данных_ — механизм архивирования исторических данных в Monium. Для уменьшения объема хранимых исторических данных значения всех метрик, записываемых в Monium, спустя неделю агрегируются по сетке в 5 минут. Подробнее в разделе [Прореживание исторических данных](../../concepts/decimation.md#history-decimation).
          
          ### Сервис (Service) {#service}
          
          _Сервис (Service)_ — объект конфигурации Monium, определяет способ передачи данных в Monium — Pull или Push. Как правило, сервис соответствует клиентскому приложению, которое передает метрики. Например, веб-сервер, база данных или другой компонент.
          
          ### Шард (Shard) {#shard}
          
          _Шард_ — объект конфигурации Monium, которому принадлежат метрики из конкретной пары [сервиса](#service) и [кластера](#cluster), а также настройки хранения этих метрик, например [TTL](#ttl).
          
          ### Язык запросов (Expression Language) {#query-language}
          
          _Язык запросов_ (Expression Language или просто Expression) — способ описать вычисления и преобразования метрик при настройке графиков и алертов, а также для выгрузки данных через API. Подробнее в разделе [Язык запросов в Monium](../../concepts/querying.md).
          
          ### TTL (Time-to-Live) {#ttl}
          
          _TTL_ — механизм автоматического удаления устаревших данных, для которых не поступали новые значения в течение определенного времени.
          
          Например, TTL метрик 7 дней означает, что метрики будут автоматически удаляться, если временная метка их последней точки старше 7 дней.
          
          Подробнее в разделе [TTL (Time-to-Live)](#ttl).
          
          ### Unified Agent {#unified-agent}
          
          _Unified Agent_ — программа для сбора, хранения, преобразования и доставки метрик и логов в Monium.
          
          ## Термины логирования {#logging-terms}
          
          ### Строка лога (Log Record) {#log-row}
          
          Минимальная единица обработки данных в системе. Представляет событие в системе, его описание, время появления и идентифицирующий набор меток.
          
          ### Размер строки лога {#log-row-size}
          
          Размер строки лога в байтах — сумма размеров значений всех полей верхнего уровня, а также длин всех ключей и значений из `labels` и `meta`.
          
          ### Лаг доставки от события (Event Lag) {#event-lag}
          
          Время между моментом генерации события в системе пользователя и моментом доставки события в централизованную систему логирования (до коллектора).
          
          ### Лаг доставки от агента (Observed Lag) {#observed-lag}
          
          Время между первой обработкой события агентом сбора и доставкой события в централизованную систему логирования (до коллектора).
          
          ## Термины трассировки {#tracing-terms}
          
          ### Трассировка запросов {#tracing} 
          
          Трассировка запросов (трейсинг) предназначена для анализа распределенных запросов. Она позволяет визуализировать и отслеживать путь выполнения конкретного запроса, который проходит через множество различных сервисов и компонентов инфраструктуры. Путь выполнения запроса представляется в виде последовательности операций, называемых спанами.
          
          ### Спан {#span}
          
          Спан — базовый элемент распределенной трассировки, отдельная операция в вашей системе. Например, запрос к базе данных, HTTP-запрос или вызов функции. Для каждого спана фиксируются его название, время начала и окончания, теги, логи и контекст выполнения. Спаны могут содержать ссылки на другие спаны, что позволяет объединять их в трейс.
          
          ### Трейс {#trace}
          
          Трейс — совокупность спанов, составляющих путь выполнения конкретного запроса.