Просмотр журналов и показателей

Ведение журналов и сбор показателей – важные инструменты для отладки и мониторинга кода. App Hosting обеспечивает быстрый доступ к журналам и показателям сервисов Google Cloud, на которых работает ваше веб-приложение: Cloud Run, Cloud Build и Cloud CDN.

Используя стандартный синтаксис ведения журнала, например console.log в Node.js, вы можете записывать записи журнала в Cloud Logging.

Как посмотреть статистику использования в консоли

На вкладке Обзор для каждого бэкенда приведена сводка по трафику приложения (количество запросов) и доле ошибок за последние семь дней.

На вкладке Журналы для бэкенда можно просматривать и фильтровать журналы сборки (из Cloud Build) и журналы среды выполнения (из Cloud Run и Cloud CDN).

У каждого бэкенда также есть вкладка Usage (Использование) с несколькими графиками, на которых показаны действия и использование приложения. Представленные данные включают пропускную способность и запросы CDN, использование ЦП и памяти Cloud Run и многое другое.

Дополнительные показатели использования для Cloud Run (например, использование ЦП и памяти) можно найти в консоли Google Cloud.

Как посмотреть журналы в консоли

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

В этих журналах содержится полезная информация для отладки развертываний App Hosting. Например, в журнале Cloud Run отмечается, когда не удается найти package.json.

В журнале сборки отображаются выходные данные сборки, что позволяет определить, где произошли ошибки: в конфигурации фреймворка или в конфигурации App Hosting. Кроме того, на ней показаны основные настройки runConfig и указано, какие из них отсутствуют или когда apphosting.yaml не существует.

> next build

   ▲ Next.js 14.1.4
   -   Environments: .env

   ...

Route (app)                              Size     First Load JS
┌ λ /                                    4.79 kB         214 kB
├ λ /_not-found                          882 B          85.3 kB
└ λ /restaurant/[id]                     5.28 kB         207 kB
+   First Load JS shared by all            84.4 kB
  ├ chunks/69-6678c81190a8fe82.js        29 kB
  ├ chunks/fd9d1056-51920e345d2966e8.js  53.4 kB
  └ other shared chunks (total)          1.98 kB

Записать журналы в Cloud Logging

Если вы хотите регистрировать специальные события, то можете записывать их в Cloud Logging из Cloud Run, где выполняется код, отрисованный на сервере. Используйте стандартные вызовы JavaScript для ведения журнала, например console.log и console.error. Например, чтобы создать собственную запись из кода для обработчика маршрутов Next.js, нужно сделать следующее:

export async function GET(request) {
  console.log("Handling GET request");
  return Response.json({ message: "Hello, world!" });
}
  • Команды console.log() имеют уровень ведения журнала INFO.
  • Команды console.info() имеют уровень ведения журнала INFO.
  • console.warn() команд имеют уровень журнала ERROR.
  • console.error() команд имеют уровень журнала ERROR.
  • Внутренние системные сообщения имеют уровень журнала DEBUG.

Обратите внимание, что console.log передается в Cloud Logging в коде приложения, отрисованном на сервере. События, связанные со статической отрисовкой, отправляются в журналы Cloud Build, а связанные с отрисовкой на сервере – в журналы Cloud Run.

Как посмотреть ошибки сервера

Cloud Error Reporting собирает ошибки из вашего экземпляра App Hosting Cloud Run. Вы можете настроить Cloud Error Reporting так, чтобы получать уведомления о новых ошибках.