Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Обновление пользовательских диаграмм

Материал из Документация АппОптима
Версия от 15:50, 26 декабря 2024; IKuznetsov (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Применение АппОптима / Наблюдайте и исследуйте / Обновление пользовательских диаграмм

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

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

Требуются немедленные действия

  • Что: Если вы используете пользовательские диаграммы, вам необходимо обновить их сейчас .
    • Пользовательские диаграммы больше не получают исправлений и улучшений.
    • Пользовательские диаграммы больше не подлежат редактированию. При обновлении пользовательских диаграмм до диаграмм Визуализации метрик вы сможете редактировать свои диаграммы, использовать исправления и улучшения функций визуализации метрик и быть готовыми к обновлению до новой платформы.
  • Когда:
    • Версия АппОптима 1.265 была последней версией АппОптима, поддерживающей пользовательские диаграммы.
    • АппОптима SaaS версии 1.271+ и АппОптима версии 1.272+ полностью отключают редактирование пользовательских диаграмм и прекращают поддержку кода пользовательских диаграмм
  • Как: Вы можете обновлять плитку за плиткой, дашборд за дашбордом или, используя API, все сразу.

Подробности смотрите ниже.

Относится ли это ко мне?

Это не относится к визуализациям и дашбордам, созданным с помощью Визуализации метрик. Это относится только к нашей старой функциональности Custom charts , которая существовала до Визуализации метрик и теперь полностью устарела.

Проверьте таблицу дашбордов

Чтобы узнать, есть ли у вас какие-либо пользовательские диаграммы старого образца, которые нужно обновить, отфильтруйте таблицу Дашборды по Пользовательские графики: Yes и посмотрите, есть ли в списке какие-либо дашборды.

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. необязательный Чтобы вывести список только тех дашбордов, которыми вы владеете, добавьте фильтр для Владение: Мой.
    213.png
    Если вы хотите проверить все дашборды, к которым у вас есть доступ, независимо от владельца, пропустите этот шаг.
  3. Добавьте фильтр для Пользовательские графики: Yes.
    214.png
  4. Проверьте таблицу.
    • Если после фильтрации по Пользовательские графики: Yes, не отображается ни одной панели, вам нечего обновлять. Вы можете остановиться здесь.
    • Если вы не фильтруете по владельцу дашборда, вы можете увидеть некоторые предустановленные дашборды АппОптима с указанием владельца. Вы можете игнорировать их.
    • Если в списке указаны какие-либо другие дашборды, на каждой из них должна отображаться метка, Пользовательские графики поскольку вы установили Пользовательские графики: Yes фильтр на предыдущем шаге. В приведенном ниже примере вам придется обновить две панели мониторинга. 215.png

Проверьте плитки на дашборде

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

  • Если плитку необходимо обновить, на ней отображается предупреждающий значок и подсказка. 216.png
  • Если на отображаемом в данный момент дашборде все еще есть хотя бы одна плитка, которую необходимо обновить, в меню дашборда в правом верхнем углу есть опция Обновить.
    217.png

Как обновиться?

Прежде чем что-либо делать, мы рекомендуем вам сделать резервные копии самых важных дашбордов. Затем попробуйте обновить резервные копии, чтобы освоиться с процессом обновления, прежде чем обновлять все оставшиеся дашборды.

Например, выберите любой популярный дашборд в вашей среде, от которого вы зависите, возможно, тот, который имеет несколько расширенных и сложных пользовательских плиток диаграмм (используется несколько показателей, и есть конфигурации для единицы, ставок и т. д.), и клонируйте его. Затем вы можете спокойно работать с клоном и проверять, все ли обновляется правильно.

  1. Чтобы составить список панелей мониторинга по популярности:
    1. Перейдите в раздел Дашборды (последняя версия Клю-АСТРОМ). Здесь перечислены все дашборды, которые вам разрешено просматривать или редактировать.
    2. Отсортируйте таблицу по столбцу Популярность .
  2. Чтобы клонировать существующий дашборд:
    1. Перейдите в раздел Дашборды (последняя версия Клю-АСТРОМ).
    2. В таблице дашбордов выберите Дополнительно ( … ) > Клонировать для дашборда, который вы хотите клонировать.
      • Копия открывается в режиме редактирования.
      • Оригинальный дашборд не затрагивается.

Обновление через веб-интерфейс

В веб-интерфейсе вы можете обновлять по одной плитке или по одному дашборду за раз.

Улучшить одну плитку

Чтобы обновить одну плитку

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Отобразить дашборды с плиткой, которую необходимо обновить. 216.png
  3. В меню плитки выберите Предварительный просмотр обновленной диаграммы. Преобразованная диаграмма откроется в визуализации метрик в новой вкладке браузера, так что вы сможете сравнить старые диаграммы с новыми визуализациями.
    218.png
  4. Проверьте визуализацию, чтобы убедиться, что она преобразована правильно. Внесите изменения по мере необходимости.
  5. Когда вы будете удовлетворены результатом преобразования, выберите «Закрепить на дашборде» и закрепите обновленную визуализацию на другой панели мониторинга или на той же панели мониторинга.
    • Если вы закрепите его на той же панели, то теперь у вас будут старые и новые плитки на той же панели. Это даст вам еще одну возможность сравнить плитки. Если вы удовлетворены результатами, удалите старую плитку (ту, что со значком предупреждения) и перетащите новую плитку на ее место.

Обновить всю панель управления

Вы можете выполнить следующие процедуры с созданием клонов (резервных копий) или без них.

Быстро, но без резервных копий

Для обновления всего дашборда (всех плиток на дашборде одновременно) без создания клона (резервной копии).

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Найдите дашборд в таблице дашбордов.
  3. В строке этой панели выберите Дополнительно (...) > Обновить . Если не обнаружено ошибок обновления, вся панель будет обновлена.
    219.png

Медленнее, но с резервным копированием

Чтобы создать клон (резервную копию) дашборда, а затем обновить весь клонированный дашборд (все плитки на дашборда одновременно)

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Найдите дашборд в таблице дашбордов.
  3. В строке этой панели выберите Дополнительно (...) > Клонировать . Это создаст клон (копию) дашборда и откроет ее в режиме редактирования. Исходный дашборд останется неизменным.
  4. Нажмите на кнопку Готово , чтобы выйти из режима редактирования и отобразить клон.
  5. В правом верхнем углу панели управления выберите Дополнительно (...) > Обновить .
    219.png
  6. Просмотрите обновленный дашборд Чтобы сравнить два дашборда рядом
    1. Перейдите в раздел Дашборды (последняя версия АппОптима).
    2. Щелкните правой кнопкой мыши на название первого дашборда в таблице Дашборды и откройте ссылку в новом окне.
    3. Щелкните правой кнопкой мыши на название второго дашборда в таблице Дашборды и откройте ссылку в новом окне.
    4. Расположите окна браузера рядом, а затем визуально сравните дашборды
  7. После того, как вы будете удовлетворены обновленном дашбордом, вы можете удалить оригинал.

Альтернативная процедура из меню дашборда

Эту процедуру можно выполнить как с созданием резервной копии, так и без нее (см. шаг 3).

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Нажмите на название дашборда, чтобы отобразить его.
  3. рекомендуется Если вы еще не сделали резервную копию, вы можете сделать это сейчас: в правом верхнем углу дашборда выберите Дополнительно (...) > Клонировать , чтобы создать и отобразить копию дашборда. При клонировании дашборда отображается клон, а исходный дашборд остается неизменным.
  4. В правом верхнем углу дашборда выберите Дополнительно (...) > Обновить .
    • Если на предыдущем шаге вы клонировали дашборд, на этом шаге вы обновляете клон.
    • Если вы не клонировали дашборд на предыдущем шаге, на этом шаге вы обновляете исходный дашборд без создания резервной копии.

После завершения обновления дашборда:

  • В нижней части дашборда мигает следующее сообщение: Дашборд успешно обновлен!
  • Плитки на этом дашборде больше не отображают значок предупреждения, поскольку все они были обновлены до плиток визуализации метрик.
  • Опция Обновить больше недоступна в меню этого дашборда, поскольку он уже был обновлен.

Проверьте наличие дополнительных дашбордов для обновления

Чтобы проверить наличие дополнительных дашбордов для обновления

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Фильтровать страницу Дашборды по Пользовательские графики: Yes.
  • Дашборды, которые вы уже обновили, не должны отображаться.
  • Все панели, на которых сохранилась метка Пользовательские графики, необходимо обновить.

Подробную информацию об определении дашбордов и диаграмм, которые все еще нуждаются в обновлении, см. в разделе Относится ли это ко мне? выше.

Обновление через API

АппОптима версии 1.251+

Используя API АппОптима, вы можете обновить один дашборд за раз или все дашборды сразу. В любом случае API всегда будет удобно пропускать дашборды, на которых нет пользовательских диаграмм , что устраняет необходимость сначала отфильтровывать дашборды без пользовательских диаграмм.

Обновить один дашборд

Чтобы обновить один дашборд через API, используйте конечную точку перехода.

https://{your-environment-id}/rest-api-doc/index.jsp?urls.primaryName=Configuration%20API#/Dashboards/migrateDashboard

Обязательно замените {your-environment-id} на фактический идентификатор вашей среды.

Обновитm все дашборды

Для обновления всех дашбордов через API

  1. Используйте конечную точку GET для получения всех идентификаторов дашборда. https://{your-environment-id}/rest-api-doc/index.jsp?urls.primaryName=Configuration%20API#/Dashboards/getDashboardStubsList Обязательно замените {your-environment-id} на фактический идентификатор вашей среды .
  2. Выполните цикл по всем идентификаторам, как описано в разделе Обновить один дашборд выше.

Пример скрипта Node.js

Чтобы быстро начать работу, не стесняйтесь адаптировать и использовать следующий пример скрипта Node.js. Мы использовали его для массового обновления всех дашбордов нашей собственной среды разработки.

Перед использованием скрипта обязательно обновите обе отмеченные строки // TODO своей собственной информацией:

  • Замените {your-environment-id} на фактический идентификатор вашей среды.
  • Замените {your-api-token} действительным токеном API с соответствующей областью действия.

import fs from "fs";

import fetch from "node-fetch";

async function migrateAllDashboards() {


  // create a backup directory

  if (!fs.existsSync("./BACKUPS")) {

    fs.mkdirSync("./BACKUPS");

  }


  export const ENV_URL = "{your-environment-id}"; // TODO replace this

  export const AUTH_HEADERS = {

      Authorization: `Api-token {your-api-token}`, // TODO replace this

   };

  const dirName = `./BACKUPS/${new URL(ENV_URL).hostname.replace(

    ".",

    "_"

  )}-${Date.now()}`;

  fs.mkdirSync(dirName);


  console.log("Fetching all the dashboards");

  const fetchAllUrl = `${ENV_URL}/api/config/v1/dashboards`;

  const response = await fetch(fetchAllUrl, { headers: AUTH_HEADERS });

  const dashboardsMetadata = await response.json();

  fs.writeFileSync(

    `${dirName}/_ALL_DASHBOARDS_METADATA.json`,

    JSON.stringify(dashboardsMetadata)

  );

  const allDashboards = dashboardsMetadata.dashboards;

  console.log(`Saved the metadata of ${allDashboards.length} dashboards`);


  for (let index = 0; index < allDashboards.length; index++) {

    const db = allDashboards[index];

    const dbId = db.id;

    const fetchDB = `${ENV_URL}/api/config/v1/dashboards/${dbId}`;

    const response = await fetch(fetchDB, { headers: AUTH_HEADERS });

    const dbContent = await response.json();

    // save dashboard content to backup directory

    fs.writeFileSync(`${dirName}/${dbId}.json`, JSON.stringify(dbContent));


    try {

      // attempt migration

      const migrateResponse = await fetch(

        `${ENV_URL}/api/config/v1/dashboards/${dbId}/migrate`,

        {

          method: "PUT",

          headers: {

            "Content-Type": "application/json",

            ...AUTH_HEADERS,

          },

          body: dbId,

        }

      );


      if (migrateResponse.status === 200) {

        if (migrateResponse.errors) {

          console.log(`X ${dbId} updated failed!);

          console.error(migrateResponse.errors);

        }

      } else {

        console.error(`X ${dbId} update failed!`);

        console.error(migrateResponse);

      }

    } catch (error) {

      console.error(`X ${dbId} update failed!`);

      console.error(updateResponse);

    }

  }

}


console.log("### Backup and Migrate\n");

await migrateAllDashboards();

console.log(`### Migration completed\n\n`);

Проверьте наличие дополнительных дашбордов для обновления

Чтобы проверить наличие дополнительных дашбордов для обновления

  1. Перейдите в раздел Дашборды (последняя версия АппОптима).
  2. Фильтровать страницу Дашборды по Пользовательские диаграммы: Yes.
  • Дашборды, которые вы уже обновили, не должны отображаться.
  • Все дашборды, на которых сохранилась метка Пользовательские диаграммы, по-прежнему необходимо обновить.

Подробную информацию об определении дашбордов и диаграмм, которые все еще нуждаются в обновлении, см. в разделе Относится ли это ко мне? выше.

Что делать, если обновление не удалось?

В зависимости от сложности задействованных плиток обновление дашборда может завершиться частичной неудачей (некоторые плитки на дашборде обновятся успешно, а некоторые — нет) или полностью (ни одна плитка на дашборде не обновится успешно).

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