Создайте график информационной панели с точками данных в журналах

У меня есть облачное задание, которое выдает журналы (в формате JSON) с метриками, которые я хотел бы отобразить на графике для визуализации.

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

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

Это еще один способ решения проблемы, с которой я столкнулся Нажмите пользовательские метрики в Google Cloud-Run , где была предложена коляска, но это сделало бы мою настройку излишне сложной. Я думаю, что, возможно, задавал неправильные вопросы

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

DazWilkin 28.05.2024 02:43

Я прочитал ваш дубликат вопроса. Я думаю, вам следует попытаться повторно использовать существующий механизм метрик Prometheus (если это возможно) вместо того, чтобы проталкивать метрики через журналы и пытаться воссоздать метрики из журналов. Есть ли у вас команда Google, которая может предоставить рекомендации по архитектуре? (1) Вы можете использовать вспомогательную программу (OpenTelemetry) для отправки метрик (требуется Prometheus, управляемый Google); (2) Вы можете использовать Prometheus Push Gateway (менее совместим с Google Cloud); (3) Вы можете настроить приложение для использования библиотеки Google Cloud Monitoring.

DazWilkin 28.05.2024 04:47

не приведет ли коляска к дополнительным затратам за время ее выполнения?

Simson 28.05.2024 05:01

Да, но оно должно быть минимальным. Я не знаю, сколько будет стоить использование аналитики журналов.

DazWilkin 28.05.2024 05:23
Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
0
4
80
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Мне удалось решить эту проблему с помощью аналитики журналов. Где я создал запрос, используя функции JSON_EXTRACT_SCALAR и CAST( ... as FLOAT64)

SELECT
  TIMESTAMP_SECONDS(UNIX_SECONDS(timestamp)) AS timestamp,
  CAST(JSON_EXTRACT_SCALAR(json_payload.fields, '$.balance') AS FLOAT64) AS balance,
  JSON_EXTRACT_SCALAR(json_payload.fields, '$.address') AS address
FROM
  `myproject-test-58cb.global._Default._Default`
WHERE
  json_payload.fields IS NOT NULL
  AND JSON_EXTRACT_SCALAR(json_payload.fields, '$.balance') IS NOT NULL 
ORDER BY
  timestamp ASC
LIMIT
  10000

В редакторе аналитики журналов я использовал кнопку «Сохранить на панели инструментов».

Использование автоматического интервала и среднего значения для устранения необходимости синхронизации всех точек данных.

Другие вопросы по теме