日志记录和指标是用于调试和监控代码的重要工具。App Hosting 可让您快速查看为 Web 应用提供支持的 Google Cloud 服务(Cloud Run、Cloud Build 和 Cloud CDN)的日志和指标。
您可以使用标准日志记录语法(例如 Node.js 的 console.log
)将日志条目写入 Cloud Logging。
在控制台中查看日志
在Firebase 控制台的部署上下文菜单(右上角的三点状菜单)中,您可以快速查看 Cloud Run 修订详情和错误以及 Cloud Build 日志。
这些日志包含对调试 App Hosting 部署有用的信息。例如,当找不到 package.json
时,Cloud Run 日志会记录相关信息。
Cloud Build 日志会显示构建输出,以便您确定错误是发生在框架配置中还是 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 Run 写入 Cloud Logging。使用标准的 JavaScript 日志记录调用,例如 console.log
和 console.error
。例如,如需通过代码为 Next.js 路由处理程序编写自定义条目,您需要编写如下代码:
console.log()
命令具有 INFO 日志级别。console.info()
命令具有 INFO 日志级别。console.warn()
命令具有 ERROR 日志级别。console.error()
命令具有 ERROR 日志级别。- 内部系统消息具有 DEBUG 日志级别。
请注意,console.log
会传输到应用的服务器渲染代码中的 Cloud Logging。与静态渲染相关的事件会发送到 Cloud Build 日志,而服务器渲染相关的事件会发送到 Cloud Run 日志。
在控制台中查看指标
在 Firebase 控制台中,您可以查看为 Web 应用提供支持的 Cloud Run 服务的流量和利用率指标。
在当前发布版本的 Firebase 控制台上下文菜单(右上角的三点状菜单)中,选择查看 Cloud Run 指标。您将能够监控到达 Cloud Run 服务的请求数量,包括按响应代码细分,以了解应用的错误率。
您还会看到请求延迟时间和容器利用率指标(例如 CPU 利用率和内存利用率),以了解应用的性能和可伸缩性。
查看服务器错误
Cloud Error Reporting 会汇总 App Hosting Cloud Run 实例中的错误。您可以视需要配置 Cloud Error Reporting,以在出现新错误时通知您。