ロギングと指標は、コードのデバッグとモニタリングに重要なツールです。 App Hosting を使用すると、ウェブアプリを強化する Google Cloud サービス( Cloud Run、Cloud Build、Cloud CDN)のログと指標にすばやくアクセスできます。
Node.js の console.log などの標準のロギング構文を使用して、Cloud Logging にログ
エントリを書き込むことができます。
コンソールで使用状況を表示する
各バックエンドには [概要] タブがあり、過去 7 日間のアプリのトラフィック(リクエスト数)とエラー率の概要が表示されます。
バックエンドの [ログ] タブでは、「ビルドログ」 (Cloud Build から)と「ランタイムログ」(Cloud Run と Cloud CDN から)を表示してフィルタできます。
各バックエンドには [使用量] タブもあります。このタブには、アプリのアクティビティと使用量に関する複数の使用量 グラフが表示されます。表示されるデータには、CDN の帯域幅とリクエスト、Cloud Run の CPU とメモリの使用率などが含まれます。
Cloud Run のその他の使用率指標(CPU 使用率やメモリ使用率など)は、Google Cloud コンソールで確認できます。
コンソールでログを表示する
Firebase コンソールのコンテキスト メニュー(右上の 3 つのドットのメニュー)から、 ロールアウトの 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 RunからCloud Loggingに書き込むことができます。console.log や console.error などの標準の JavaScript ロギング呼び出しを使用します。たとえば、
Next.js ルート ハンドラのコードからカスタム エントリを書き込むには、
次のようにします。
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 を構成できます。