> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Демо-дни — 2026-05-15

> Демо-дни ClickStack от 2026-05-15

<div id="alerts-from-notebooks">
  ## Оповещения из блокнотов
</div>

*Демо от [@brandon-pereira](https://github.com/brandon-pereira)*

<Frame>
  <iframe src="https://www.youtube.com/embed/HIxCMDmdZ8o" title="Видеоплеер YouTube" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

Теперь блокноты могут создавать оповещения. Тот же сценарий в блокноте, который уже умеет на лету собирать панели мониторинга, теперь также настроит для вас оповещение, так что вы можете перейти от «вот интересный запрос» к «сообщите мне, когда это сработает», не выходя из блокнота.

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

<div id="autocomplete-from-materialized-views">
  ## Автодополнение с помощью materialized views
</div>

*Демо от [@knudtty](https://github.com/knudtty)*

<Frame>
  <iframe src="https://www.youtube.com/embed/iQf5EwktBW4" title="Видеоплеер YouTube" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

Некоторое время назад мы добавили materialized views для автодополнения атрибутов в строке поиска, благодаря чему значения стали появляться мгновенно, а не вычисляться на лету. Теперь мы используем те же MV и для боковых фильтров, а это значит, что на нагруженных экземплярах фильтры загружаются намного быстрее.

Есть одно изменение в поведении, на которое стоит обратить внимание. Фильтры на основе MV возвращают все возможные значения фильтров в пределах текущего временного диапазона, а не только в рамках текущего запроса. Есть переключатель, который позволяет вернуться к фильтрам, ограниченным поиском; они выполняют более медленную агрегацию по вашим текущим результатам. Значение по умолчанию для `filterValueExpandedKeyLimit` тоже увеличили: 20 ключей без MV и 100 ключей с ними, с возможностью настроить это значение как угодно (мы тестировали 1000).

Поддержка MV обходится сравнительно недорого: она работает на нашем стейджинговом экземпляре с большим объёмом данных и показывает себя хорошо. Та же MV используется для автодополнения атрибутов и разворачивания столбца map, так что после настройки ускорение вы получаете сразу в нескольких местах. Во время демо также обсуждали, не стоит ли вынести переключатель между фильтрами, ограниченными поиском, и полным списком фильтров в отдельный переключатель в верхней части панели фильтров, вместо того чтобы оставлять его в настройках; мы рассматриваем это как одно из возможных улучшений в будущем.

**Связанные PR:** [#2272](https://github.com/hyperdxio/hyperdx/pull/2272) feat: по умолчанию фильтры не зависят от поиска; ускорено с помощью MV

<div id="table-column-ordering-and-per-series-formatting">
  ## Порядок столбцов таблицы и форматирование отдельных серий
</div>

*Демо от [@pulpdrew](https://github.com/pulpdrew)*

<Frame>
  <iframe src="https://www.youtube.com/embed/iEn8kzvERE8" title="Проигрыватель видео YouTube" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

Одновременно появилось несколько связанных улучшений для таблиц. Столбцы группировки теперь можно закреплять слева, а не всегда отображать справа — обычно именно это и нужно для панелей мониторинга в стиле RED, где взгляд в первую очередь скользит по имени сервиса. Для управления этим поведением есть отдельная настройка отображения таблицы.

Теперь также поддерживаются числовые форматы для отдельных серий. Раньше один и тот же числовой формат применялся ко всей таблице, из-за чего столбец Requests мог отображаться как `123ms`, если в таблице была хотя бы одна серия с форматированием в миллисекундах. Теперь можно задать формат для каждого столбца или для каждой серии, поэтому количество запросов остаётся обычным числом, а столбцы с latency форматируются как длительности.

Кроме того, определение формата теперь тоже выполняется для каждой серии. Если вы агрегируете по полю Trace Duration, именно для этой серии будет определён формат в миллисекундах, а вся остальная таблица не будет форматироваться в миллисекундах только потому, что один из столбцов содержит длительность.

**Связанные PR:** [#2149](https://github.com/hyperdxio/hyperdx/pull/2149) feat: Allow displaying group-by columns on LHS of table, [#2174](https://github.com/hyperdxio/hyperdx/pull/2174) feat: Add per-series number formats

<div id="customizable-dashboard-linking">
  ## Настраиваемые ссылки между панелями мониторинга
</div>

*Демо от [@pulpdrew](https://github.com/pulpdrew)*

<Frame>
  <iframe src="https://www.youtube.com/embed/Stlz02xES40" title="Видеоплеер YouTube" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

Таблицы на панелях мониторинга теперь могут по щелчку на строке открывать другие панели мониторинга (или поиск), с настраиваемыми шаблонами как для пункта назначения, так и для передаваемых фильтров. В конфигурации табличного блока появился новый параметр — "действие по щелчку на строке". Выберите "панель мониторинга", укажите целевую панель мониторинга, а затем сопоставьте фильтры из текущей строки с фильтрами на целевой панели мониторинга. Значения фильтров задаются с помощью шаблонов в стиле Handlebars, поэтому можно подставить значение любого столбца из выбранной строки в фильтр пункта назначения или в предложение WHERE (как в SQL, так и в Lucene). В примере из демо список сервисов настроен так, что щелчок по строке открывает панель мониторинга service-detail с уже применённым фильтром `service.name`.

Вместо выбора конкретной целевой панели мониторинга можно шаблонизировать и само её имя. Так, если у вас есть отдельные панели мониторинга для сервисов с именами вроде `${service.name} dashboard`, ссылка будет вести на ту из них, которая соответствует выбранной строке. Также предусмотрена обработка ошибок на случай, если панель мониторинга, заданная шаблоном, не существует: вместо перехода на неработающую страницу появится уведомление.

Поддерживается несколько переменных: можно передавать любую комбинацию столбцов из выбранной строки либо в набор фильтров, либо в шаблонное имя панели мониторинга. В Handlebars есть динамические хелперы и условные блоки, но пока большинство из них отключено, чтобы набор возможностей оставался небольшим и предсказуемым. Также обновлён процесс импорта: у панелей мониторинга, которые ссылаются на другие панели мониторинга по ID, теперь можно переназначать эти ссылки при импорте на панель мониторинга, существующую в целевой учётной записи.

**Связанные PR:** [#2146](https://github.com/hyperdxio/hyperdx/pull/2146) feat: Add filter templating to custom dashboard on-click, [#2148](https://github.com/hyperdxio/hyperdx/pull/2148) feat: Support import/export for dashboard onClicks, [#2156](https://github.com/hyperdxio/hyperdx/pull/2156) feat: Add custom onClick field to external dashboards API, [#2273](https://github.com/hyperdxio/hyperdx/pull/2273) feat: Add dashboard table onClick to MCP schemas and prompts
