<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0_%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_%E2%80%94_%D0%94%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B</id>
	<title>Структура документа Ключ-АСТРОМ — Дашборды - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0_%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_%E2%80%94_%D0%94%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0_%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_%E2%80%94_%D0%94%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B&amp;action=history"/>
	<updated>2026-10-06T15:52:49Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0_%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_%E2%80%94_%D0%94%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B&amp;diff=6948&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: « = Структура документа Ключ-АСТРОМ — Дашборды = Дашборд Ключ-АСТРОМ хранится как документ &#039;&#039;&#039;JSON&#039;&#039;&#039;. Понимание структуры помогает создавать и изменять дашборды через &#039;&#039;&#039;API&#039;&#039;&#039; или путём прямого редактирования &#039;&#039;&#039;JSON&#039;&#039;&#039; в &#039;&#039;&#039;Дашбордах&#039;&#039;&#039;.  == Обзор == Документ дашборда...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0_%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_%E2%80%94_%D0%94%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B&amp;diff=6948&amp;oldid=prev"/>
		<updated>2026-09-28T20:40:30Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: « = Структура документа Ключ-АСТРОМ — Дашборды = Дашборд Ключ-АСТРОМ хранится как документ &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039;. Понимание структуры помогает создавать и изменять дашборды через &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039; или путём прямого редактирования &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Дашбордах&amp;#039;&amp;#039;&amp;#039;.  == Обзор == Документ дашборда...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
= Структура документа Ключ-АСТРОМ — Дашборды =&lt;br /&gt;
Дашборд Ключ-АСТРОМ хранится как документ &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039;. Понимание структуры помогает создавать и изменять дашборды через &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039; или путём прямого редактирования &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Дашбордах&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
== Обзор ==&lt;br /&gt;
Документ дашборда состоит из четырёх обязательных свойств — &amp;lt;code&amp;gt;version&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;variables&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;layouts&amp;lt;/code&amp;gt; — плюс необязательные свойства, такие как &amp;lt;code&amp;gt;settings&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;annotations&amp;lt;/code&amp;gt;. Плитки определяют содержимое, отображаемое на дашборде, а макеты управляют их положением на сетке.&lt;br /&gt;
&lt;br /&gt;
== Структура верхнего уровня ==&lt;br /&gt;
&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;version&amp;quot;: 21,&lt;br /&gt;
  &amp;quot;variables&amp;quot;: [],&lt;br /&gt;
  &amp;quot;tiles&amp;quot;: {},&lt;br /&gt;
  &amp;quot;layouts&amp;quot;: {}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Свойство&lt;br /&gt;
!Тип&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;version&amp;lt;/code&amp;gt;&lt;br /&gt;
|number&lt;br /&gt;
|Версия схемы. Используйте &amp;lt;code&amp;gt;21&amp;lt;/code&amp;gt; для новых дашбордов.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;variables&amp;lt;/code&amp;gt;&lt;br /&gt;
|array&lt;br /&gt;
|Определения переменных. См. &amp;#039;&amp;#039;&amp;#039;Переменные&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt;&lt;br /&gt;
|object&lt;br /&gt;
|Сопоставление ID плитки с определением плитки. См. &amp;#039;&amp;#039;&amp;#039;Плитки&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;layouts&amp;lt;/code&amp;gt;&lt;br /&gt;
|object&lt;br /&gt;
|Сопоставление ID плитки с позицией в макете. См. &amp;#039;&amp;#039;&amp;#039;Макет&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|}&lt;br /&gt;
Необязательные свойства: &amp;lt;code&amp;gt;settings&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;annotations&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
ID плиток в &amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt; должны совпадать с ID в &amp;lt;code&amp;gt;layouts&amp;lt;/code&amp;gt;. ID — это строки (обычно числовые строки, например &amp;lt;code&amp;gt;&amp;quot;1&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;&amp;quot;2&amp;quot;&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== Плитки ==&lt;br /&gt;
Плитки хранятся в &amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt; как объект, ключами которого являются ID плиток. Существует четыре типа плиток.&lt;br /&gt;
&lt;br /&gt;
=== Плитка Markdown ===&lt;br /&gt;
Плитка Markdown отображает статическое текстовое содержимое, отформатированное с помощью Markdown.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;markdown&amp;quot;,&lt;br /&gt;
  &amp;quot;content&amp;quot;: &amp;quot;# Section Header\n\nSome text here.&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Плитка данных ===&lt;br /&gt;
Плитка данных выполняет запрос &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039; и отображает результаты в виде визуализации.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;data&amp;quot;,&lt;br /&gt;
  &amp;quot;title&amp;quot;: &amp;quot;Tile Name&amp;quot;,&lt;br /&gt;
  &amp;quot;query&amp;quot;: &amp;quot;timeseries avg(dt.host.cpu.usage), by:{host.name}&amp;quot;,&lt;br /&gt;
  &amp;quot;visualization&amp;quot;: &amp;quot;lineChart&amp;quot;,&lt;br /&gt;
  &amp;quot;visualizationSettings&amp;quot;: {},&lt;br /&gt;
  &amp;quot;querySettings&amp;quot;: {}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Свойство&lt;br /&gt;
!Обязательно&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;&lt;br /&gt;
|Да&lt;br /&gt;
|Отображается в верхней части плитки.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;query&amp;lt;/code&amp;gt;&lt;br /&gt;
|Да&lt;br /&gt;
|Запрос &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;visualization&amp;lt;/code&amp;gt;&lt;br /&gt;
|Да&lt;br /&gt;
|Тип визуализации. См. &amp;#039;&amp;#039;&amp;#039;Типы визуализаций&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;visualizationSettings&amp;lt;/code&amp;gt;&lt;br /&gt;
|Да&lt;br /&gt;
|Объект настроек, специфичных для визуализации. Может быть пустым.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;querySettings&amp;lt;/code&amp;gt;&lt;br /&gt;
|Да&lt;br /&gt;
|Объект настроек, специфичных для запроса. Может быть пустым.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;description&amp;lt;/code&amp;gt;&lt;br /&gt;
|Нет&lt;br /&gt;
|Дополнительное описание плитки.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;timeframe&amp;lt;/code&amp;gt;&lt;br /&gt;
|Нет&lt;br /&gt;
|Переопределение временного диапазона для конкретной плитки. Должно быть объектом, а не строкой.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;segments&amp;lt;/code&amp;gt;&lt;br /&gt;
|Нет&lt;br /&gt;
|Фильтр сегментов для конкретной плитки.&lt;br /&gt;
|}&lt;br /&gt;
Необязательные свойства &amp;lt;code&amp;gt;queryConfig&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;davisCopilot&amp;lt;/code&amp;gt; можно дополнительно использовать для создания специализированных плиток данных:&lt;br /&gt;
&lt;br /&gt;
* если присутствует допустимое свойство &amp;lt;code&amp;gt;queryConfig&amp;lt;/code&amp;gt;, плитка интерпретируется как плитка Explore;&lt;br /&gt;
* если присутствует допустимое свойство &amp;lt;code&amp;gt;davisCopilot&amp;lt;/code&amp;gt;, плитка интерпретируется как плитка Prompt.&lt;br /&gt;
&lt;br /&gt;
=== Код-плитка ===&lt;br /&gt;
Код-плитка выполняет &amp;#039;&amp;#039;&amp;#039;JavaScript&amp;#039;&amp;#039;&amp;#039; и при необходимости отображает результаты в виде визуализации.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;code&amp;quot;,&lt;br /&gt;
  &amp;quot;title&amp;quot;: &amp;quot;Custom&amp;quot;,&lt;br /&gt;
  &amp;quot;input&amp;quot;: &amp;quot;// JavaScript code here&amp;quot;,&lt;br /&gt;
  &amp;quot;visualization&amp;quot;: &amp;quot;lineChart&amp;quot;,&lt;br /&gt;
  &amp;quot;visualizationSettings&amp;quot;: {}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Плитка SLO ===&lt;br /&gt;
Плитка SLO отображает цель уровня обслуживания по её ID.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;slo&amp;quot;,&lt;br /&gt;
  &amp;quot;title&amp;quot;: &amp;quot;SLO Name&amp;quot;,&lt;br /&gt;
  &amp;quot;input&amp;quot;: &amp;quot;slo-id&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Типы визуализаций ==&lt;br /&gt;
Свойство &amp;lt;code&amp;gt;visualization&amp;lt;/code&amp;gt; плитки данных определяет, как отображаются результаты запроса. Каждая визуализация требует определённых типов полей в результате запроса. Если запрос возвращает неправильные типы, плитка отображается пустой или показывает ошибку.&lt;br /&gt;
&lt;br /&gt;
Типы полей: &amp;lt;code&amp;gt;timestamp&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;timeframe&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;long&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;double&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;duration&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;string&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Легенда: R = обязательно, O = необязательно, C = условно.&lt;br /&gt;
&lt;br /&gt;
=== Графики временных рядов ===&lt;br /&gt;
&amp;lt;code&amp;gt;lineChart&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;areaChart&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;barChart&amp;lt;/code&amp;gt; отображают данные метрик во времени.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Слот&lt;br /&gt;
!Принимаемые типы&lt;br /&gt;
!Количество&lt;br /&gt;
!Обязательность&lt;br /&gt;
|-&lt;br /&gt;
|Time&lt;br /&gt;
|&amp;lt;code&amp;gt;timestamp&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;timeframe&amp;lt;/code&amp;gt;&lt;br /&gt;
|1&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|Interval&lt;br /&gt;
|&amp;lt;code&amp;gt;duration&amp;lt;/code&amp;gt;&lt;br /&gt;
|1&lt;br /&gt;
|C — обязательно, когда Values имеет тип &amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Values&lt;br /&gt;
|&amp;lt;code&amp;gt;long&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;double&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;duration&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt;&lt;br /&gt;
|1+&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|Names&lt;br /&gt;
|любой&lt;br /&gt;
|1+&lt;br /&gt;
|O&lt;br /&gt;
|}&lt;br /&gt;
При использовании &amp;lt;code&amp;gt;timeseries&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;makeTimeseries&amp;lt;/code&amp;gt; значения имеют тип &amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt;, и в результате запроса должно присутствовать поле интервала.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;bandChart&amp;lt;/code&amp;gt; имеет те же требования плюс два дополнительных обязательных слота &amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt; для минимального и максимального значений полосы.&lt;br /&gt;
&lt;br /&gt;
=== Категориальные графики ===&lt;br /&gt;
&amp;lt;code&amp;gt;categoricalBarChart&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pieChart&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;donutChart&amp;lt;/code&amp;gt; показывают значения, сгруппированные по категориям. Типичный шаблон запроса: &amp;lt;code&amp;gt;summarize &amp;lt;aggregation&amp;gt;, by:{category}&amp;lt;/code&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Слот&lt;br /&gt;
!Принимаемые типы&lt;br /&gt;
!Количество&lt;br /&gt;
!Обязательность&lt;br /&gt;
|-&lt;br /&gt;
|Values&lt;br /&gt;
|&amp;lt;code&amp;gt;long&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;double&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;duration&amp;lt;/code&amp;gt;&lt;br /&gt;
|1+&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|Categories&lt;br /&gt;
|любой&lt;br /&gt;
|1+&lt;br /&gt;
|R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Одно значение и датчик ===&lt;br /&gt;
&amp;lt;code&amp;gt;singleValue&amp;lt;/code&amp;gt; отображает одно значение метрики.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Слот&lt;br /&gt;
!Принимаемые типы&lt;br /&gt;
!Количество&lt;br /&gt;
!Обязательность&lt;br /&gt;
|-&lt;br /&gt;
|Single value&lt;br /&gt;
|любой&lt;br /&gt;
|1&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|Sparkline&lt;br /&gt;
|&amp;lt;code&amp;gt;numericArray&amp;lt;/code&amp;gt;&lt;br /&gt;
|1&lt;br /&gt;
|O&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;code&amp;gt;meterBar&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;gauge&amp;lt;/code&amp;gt; отображают числовое значение на шкале.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Слот&lt;br /&gt;
!Принимаемые типы&lt;br /&gt;
!Количество&lt;br /&gt;
!Обязательность&lt;br /&gt;
|-&lt;br /&gt;
|Meter/Gauge value&lt;br /&gt;
|&amp;lt;code&amp;gt;long&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;double&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;duration&amp;lt;/code&amp;gt;&lt;br /&gt;
|1&lt;br /&gt;
|R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Табличные ===&lt;br /&gt;
&amp;lt;code&amp;gt;table&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;raw&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;recordList&amp;lt;/code&amp;gt; принимают любую форму данных без требований к типам полей.&lt;br /&gt;
&lt;br /&gt;
=== Другие визуализации ===&lt;br /&gt;
Также доступны &amp;lt;code&amp;gt;davis&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;histogram&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;honeycomb&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;choropleth&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;dotMap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;connectionMap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;bubbleMap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;heatmap&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;scatterplot&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;treemap&amp;lt;/code&amp;gt;, каждая со своими требованиями к слотам.&lt;br /&gt;
&lt;br /&gt;
== Макет ==&lt;br /&gt;
Позиции плиток хранятся в &amp;lt;code&amp;gt;layouts&amp;lt;/code&amp;gt; как объект, ключи которого совпадают с ID плиток в &amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt;. Каждая плитка в &amp;lt;code&amp;gt;tiles&amp;lt;/code&amp;gt; должна иметь соответствующую запись в &amp;lt;code&amp;gt;layouts&amp;lt;/code&amp;gt;.&amp;lt;pre&amp;gt;&amp;quot;layouts&amp;quot;: {&lt;br /&gt;
  &amp;quot;1&amp;quot;: { &amp;quot;x&amp;quot;: 0, &amp;quot;y&amp;quot;: 0, &amp;quot;w&amp;quot;: 24, &amp;quot;h&amp;quot;: 1 },&lt;br /&gt;
  &amp;quot;2&amp;quot;: { &amp;quot;x&amp;quot;: 0, &amp;quot;y&amp;quot;: 1, &amp;quot;w&amp;quot;: 12, &amp;quot;h&amp;quot;: 8 },&lt;br /&gt;
  &amp;quot;3&amp;quot;: { &amp;quot;x&amp;quot;: 12, &amp;quot;y&amp;quot;: 1, &amp;quot;w&amp;quot;: 12, &amp;quot;h&amp;quot;: 8 },&lt;br /&gt;
  &amp;quot;4&amp;quot;: { &amp;quot;x&amp;quot;: 0, &amp;quot;y&amp;quot;: 9, &amp;quot;w&amp;quot;: 24, &amp;quot;h&amp;quot;: 8 }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Свойство&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;&lt;br /&gt;
|Горизонтальная позиция (столбец), с индексом от нуля.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;&lt;br /&gt;
|Вертикальная позиция (строка), с индексом от нуля.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;w&amp;lt;/code&amp;gt;&lt;br /&gt;
|Ширина в единицах сетки.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;h&amp;lt;/code&amp;gt;&lt;br /&gt;
|Высота в единицах сетки.&lt;br /&gt;
|}&lt;br /&gt;
Сетка имеет ширину 24 столбца. Распространённые значения ширины:&lt;br /&gt;
&lt;br /&gt;
* 24 — полная ширина&lt;br /&gt;
* 12 — половина ширины&lt;br /&gt;
* 6 — четверть ширины&lt;br /&gt;
&lt;br /&gt;
Распространённые значения высоты:&lt;br /&gt;
&lt;br /&gt;
* 1 — строка заголовка или метки&lt;br /&gt;
* от 6 до 8 — стандартный график&lt;br /&gt;
* от 12 до 16 — детальный вид&lt;br /&gt;
&lt;br /&gt;
Плитки, у которых &amp;lt;code&amp;gt;x + w &amp;gt; 24&amp;lt;/code&amp;gt;, переносятся на следующую строку.&lt;br /&gt;
&lt;br /&gt;
== Переменные ==&lt;br /&gt;
Переменные обеспечивают динамическую фильтрацию по плиткам. Определяются в &amp;lt;code&amp;gt;variables&amp;lt;/code&amp;gt; как массив и используются в запросах &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039; через &amp;lt;code&amp;gt;$key&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Все типы переменных имеют следующие общие свойства:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Свойство&lt;br /&gt;
!Тип&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;key&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|Идентификатор, используемый как &amp;lt;code&amp;gt;$key&amp;lt;/code&amp;gt; в запросах &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;type&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;quot;query&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;&amp;quot;text&amp;quot;&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;&amp;quot;csv&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;visible&amp;lt;/code&amp;gt;&lt;br /&gt;
|boolean&lt;br /&gt;
|Показывать селектор переменной в интерфейсе дашборда.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;editable&amp;lt;/code&amp;gt;&lt;br /&gt;
|boolean&lt;br /&gt;
|Разрешить пользователям изменять выбранное значение.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Переменные запроса ===&lt;br /&gt;
Переменные запроса заполняют свои параметры путём выполнения запроса &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039;. Запрос должен возвращать ровно одно поле.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;version&amp;quot;: 2,&lt;br /&gt;
  &amp;quot;key&amp;quot;: &amp;quot;Service&amp;quot;,&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;query&amp;quot;,&lt;br /&gt;
  &amp;quot;visible&amp;quot;: true,&lt;br /&gt;
  &amp;quot;editable&amp;quot;: true,&lt;br /&gt;
  &amp;quot;input&amp;quot;: &amp;quot;smartscapeNodes SERVICE | fields name | sort name asc&amp;quot;,&lt;br /&gt;
  &amp;quot;multiple&amp;quot;: false&lt;br /&gt;
}&amp;lt;/pre&amp;gt;Для множественного выбора со всеми значениями, выбранными по умолчанию, установите &amp;lt;code&amp;gt;&amp;quot;multiple&amp;quot;: true&amp;lt;/code&amp;gt; и используйте токен выбора всех значений по умолчанию:&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;version&amp;quot;: 2,&lt;br /&gt;
  &amp;quot;key&amp;quot;: &amp;quot;Services&amp;quot;,&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;query&amp;quot;,&lt;br /&gt;
  &amp;quot;visible&amp;quot;: true,&lt;br /&gt;
  &amp;quot;editable&amp;quot;: true,&lt;br /&gt;
  &amp;quot;input&amp;quot;: &amp;quot;smartscapeNodes SERVICE | fields name | sort name asc&amp;quot;,&lt;br /&gt;
  &amp;quot;multiple&amp;quot;: true,&lt;br /&gt;
  &amp;quot;defaultValue&amp;quot;: [&amp;quot;3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05*&amp;quot;]&lt;br /&gt;
}&amp;lt;/pre&amp;gt;Используйте полный токен вида UUID-плюс-&amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt;, как показано выше, в качестве подстановочного значения, а не литеральную строку &amp;lt;code&amp;gt;&amp;quot;*&amp;quot;&amp;lt;/code&amp;gt;. Ключ-АСТРОМ сохраняет подстановочный знак как &amp;#039;&amp;#039;&amp;#039;UUID&amp;#039;&amp;#039;&amp;#039;, чтобы избежать конфликтов с допустимыми значениями переменных, поскольку &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt; сам по себе может быть одним из них. Литеральное значение по умолчанию &amp;lt;code&amp;gt;&amp;quot;*&amp;quot;&amp;lt;/code&amp;gt; вызывает непредвиденное поведение — например, при клонировании дашборда предварительно выбирается дополнительная незаполненная опция, которую затем нужно вручную заменить подстановочным знаком в редакторе переменных.&lt;br /&gt;
&lt;br /&gt;
=== Текстовые переменные ===&lt;br /&gt;
Текстовые переменные принимают свободный ввод пользователя.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;version&amp;quot;: 2,&lt;br /&gt;
  &amp;quot;key&amp;quot;: &amp;quot;Threshold&amp;quot;,&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;text&amp;quot;,&lt;br /&gt;
  &amp;quot;visible&amp;quot;: true,&lt;br /&gt;
  &amp;quot;defaultValue&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
  &amp;quot;editable&amp;quot;: true&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CSV-переменные ===&lt;br /&gt;
CSV-переменные предоставляют статический предопределённый список значений.&amp;lt;pre&amp;gt;{&lt;br /&gt;
  &amp;quot;version&amp;quot;: 2,&lt;br /&gt;
  &amp;quot;key&amp;quot;: &amp;quot;Status&amp;quot;,&lt;br /&gt;
  &amp;quot;type&amp;quot;: &amp;quot;csv&amp;quot;,&lt;br /&gt;
  &amp;quot;visible&amp;quot;: true,&lt;br /&gt;
  &amp;quot;editable&amp;quot;: true,&lt;br /&gt;
  &amp;quot;input&amp;quot;: &amp;quot;WARN,ERROR,INFO,NONE&amp;quot;,&lt;br /&gt;
  &amp;quot;multiple&amp;quot;: true,&lt;br /&gt;
  &amp;quot;defaultValue&amp;quot;: [&amp;quot;3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05*&amp;quot;]&lt;br /&gt;
}&amp;lt;/pre&amp;gt;Подстановочный токен в &amp;lt;code&amp;gt;defaultValue&amp;lt;/code&amp;gt; работает так же, как для переменных запроса: используйте токен вида UUID-плюс-&amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt;, а не литеральную строку &amp;lt;code&amp;gt;&amp;quot;*&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Синтаксис ссылок на переменные ===&lt;br /&gt;
Ссылайтесь на переменную в &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039; с помощью &amp;lt;code&amp;gt;$key&amp;lt;/code&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Конфигурация переменной&lt;br /&gt;
!Шаблон запроса&lt;br /&gt;
|-&lt;br /&gt;
|Одиночный выбор (&amp;lt;code&amp;gt;multiple: false&amp;lt;/code&amp;gt;)&lt;br /&gt;
|&amp;lt;code&amp;gt;filter field == $Variable&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Множественный выбор (&amp;lt;code&amp;gt;multiple: true&amp;lt;/code&amp;gt;)&lt;br /&gt;
|&amp;lt;code&amp;gt;filter in(field, array($Variable))&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Используйте модификаторы, когда подстановка строки по умолчанию не подходит:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Модификатор&lt;br /&gt;
!Для чего&lt;br /&gt;
!Пример&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;:noquote&amp;lt;/code&amp;gt;&lt;br /&gt;
|Числовые параметры или параметры длительности&lt;br /&gt;
|&amp;lt;code&amp;gt;limit $N:noquote&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;:backtick&amp;lt;/code&amp;gt;&lt;br /&gt;
|Имя поля в &amp;lt;code&amp;gt;by:{}&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;sort&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;by: {$GroupBy:backtick}&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;:triplequote&amp;lt;/code&amp;gt;&lt;br /&gt;
|Строковые константы в &amp;lt;code&amp;gt;matchesPhrase()&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;contains()&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;matchesPhrase(content, $Search:triplequote)&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Переменные могут ссылаться на другие переменные. Зависимая переменная пересчитывается при изменении переменной, от которой она зависит. Циклические зависимости не допускаются.&lt;br /&gt;
&lt;br /&gt;
== Настройки ==&lt;br /&gt;
&amp;lt;code&amp;gt;settings&amp;lt;/code&amp;gt; — необязательный объект. Если он присутствует, он может быть пустым (&amp;lt;code&amp;gt;{}&amp;lt;/code&amp;gt;) или содержать конфигурацию уровня дашборда.&amp;lt;pre&amp;gt;&amp;quot;settings&amp;quot;: {&lt;br /&gt;
  &amp;quot;defaultTimeframe&amp;quot;: {&lt;br /&gt;
    &amp;quot;value&amp;quot;: {&lt;br /&gt;
      &amp;quot;from&amp;quot;: &amp;quot;now()-2h&amp;quot;,&lt;br /&gt;
      &amp;quot;to&amp;quot;: &amp;quot;now()&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;enabled&amp;quot;: true&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&amp;lt;code&amp;gt;defaultTimeframe&amp;lt;/code&amp;gt; задаёт временной диапазон, отображаемый на плитках, которые не переопределяют временной диапазон. Он также определяет окно, для которого оцениваются аннотации.&lt;br /&gt;
&lt;br /&gt;
== Валидация дашборда ==&lt;br /&gt;
Ключ-АСТРОМ проверяет &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039; дашборда при сохранении изменений в редакторе &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039;. Если проверка не пройдена, редактор показывает ошибку и не позволяет сохранить, пока вы её не исправите.&lt;br /&gt;
&lt;br /&gt;
Начиная с версии Ключ-АСТРОМ 1.344 дашборды, не прошедшие валидацию, не будут загружаться. Чтобы исправить дашборд, не прошедший валидацию, откройте его в &amp;#039;&amp;#039;&amp;#039;Дашбордах&amp;#039;&amp;#039;&amp;#039; и выберите &amp;#039;&amp;#039;&amp;#039;Редактировать JSON&amp;#039;&amp;#039;&amp;#039; в меню дашборда.&lt;br /&gt;
&lt;br /&gt;
Когда вы открываете дашборд с ошибками валидации, в левом нижнем углу появляется уведомление. Доступные действия зависят от ваших разрешений:&lt;br /&gt;
&lt;br /&gt;
* Разрешения на редактирование: выберите &amp;#039;&amp;#039;&amp;#039;Редактировать JSON&amp;#039;&amp;#039;&amp;#039;, чтобы открыть редактор &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039; и исправить ошибки напрямую.&lt;br /&gt;
* Разрешения на просмотр: вы не можете исправить дашборд. Это должен сделать владелец дашборда.&lt;br /&gt;
&lt;br /&gt;
=== Отсутствует обязательное свойство &amp;#039;type&amp;#039; ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ошибка&amp;#039;&amp;#039;&amp;#039;&amp;lt;pre&amp;gt;Missing required property &amp;#039;type&amp;#039; of tile id &amp;#039;10&amp;#039;. Expected one of: &amp;#039;data&amp;#039;, &amp;#039;code&amp;#039;, &amp;#039;markdown&amp;#039;, &amp;#039;slo&amp;#039;&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;Причина:&amp;#039;&amp;#039;&amp;#039; у плитки отсутствует обязательное свойство &amp;lt;code&amp;gt;type&amp;lt;/code&amp;gt;. Частая причина — загрузка классического дашборда в &amp;#039;&amp;#039;&amp;#039;Дашборды&amp;#039;&amp;#039;&amp;#039;, который использует другую схему &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Исправление:&amp;#039;&amp;#039;&amp;#039; добавьте допустимое свойство &amp;lt;code&amp;gt;type&amp;lt;/code&amp;gt; к плитке. Поддерживаемые значения: &amp;lt;code&amp;gt;data&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;markdown&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;slo&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Недопустимый тип для &amp;#039;timeframe&amp;#039; ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ошибка&amp;#039;&amp;#039;&amp;#039;&amp;lt;pre&amp;gt;Invalid type for property &amp;#039;timeframe&amp;#039; of tile id &amp;#039;10&amp;#039; (expected object, received string)&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;Причина:&amp;#039;&amp;#039;&amp;#039; свойство &amp;lt;code&amp;gt;timeframe&amp;lt;/code&amp;gt; является строкой (например, &amp;lt;code&amp;gt;&amp;quot;timeframe&amp;quot;: &amp;quot;last 24h&amp;quot;&amp;lt;/code&amp;gt;) вместо объекта.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Исправление:&amp;#039;&amp;#039;&amp;#039; замените строковое значение правильным форматом объекта:&amp;lt;pre&amp;gt;&amp;quot;timeframe&amp;quot;: {&lt;br /&gt;
  &amp;quot;tileTimeframeEnabled&amp;quot;: true,&lt;br /&gt;
  &amp;quot;tileTimeframe&amp;quot;: {&lt;br /&gt;
    &amp;quot;from&amp;quot;: &amp;quot;now()-24h&amp;quot;,&lt;br /&gt;
    &amp;quot;to&amp;quot;: &amp;quot;now()&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>