گزارشگیری و معیارها ابزارهای مهمی برای اشکالزدایی و نظارت بر کد هستند. App Hosting دسترسی سریع به مشاهده گزارشها و معیارهای مربوط به سرویسهای Google Cloud که برنامه وب شما را پشتیبانی میکنند، مانند Cloud Run ، Cloud Build و Cloud CDN را فراهم میکند.
با استفاده از سینتکس استاندارد ثبت وقایع مانند console.log در Node.js، میتوانید ورودیهای گزارش را در Cloud Logging بنویسید.
مشاهده میزان استفاده در کنسول
هر بکاند یک تب Overview دارد که خلاصهای از ترافیک برنامه شما (تعداد درخواستها) و میزان خطا در هفت روز گذشته را نشان میدهد.
هر بکاند همچنین دارای یک تب Usage با چندین نمودار مصرف برای فعالیت و استفاده از برنامه شما است. دادههای نمایش داده شده شامل پهنای باند و درخواستهای CDN، میزان استفاده از CPU و حافظه Cloud Run و موارد دیگر میشود.
میتوانید معیارهای استفادهی بیشتری برای Cloud Run (مانند استفاده از CPU و استفاده از Memory) را در کنسول 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 Run در Cloud Logging بنویسید، جایی که کد رندر شده توسط سرور شما اجرا میشود. از فراخوانیهای استاندارد ثبت وقایع جاوا اسکریپت مانند console.log و console.error استفاده کنید. به عنوان مثال، برای نوشتن یک ورودی سفارشی از کد برای یک کنترلکننده مسیر Next.js ، باید کاری شبیه به این انجام دهید:
- دستورات
console.log()سطح گزارش INFO را دارند. - دستورات
console.info()سطح ثبت اطلاعات (INFO log) دارند. - دستورات
console.warn()دارای سطح گزارش خطا (ERROR) هستند. - دستورات
console.error()دارای سطح ثبت وقایع ERROR هستند. - پیامهای سیستم داخلی دارای سطح گزارش DEBUG هستند.
توجه داشته باشید که console.log در کد رندر شده توسط سرور برای برنامه شما به Cloud Logging متصل میشود. رویدادهای مربوط به رندر استاتیک به Cloud Build logs ارسال میشوند، در حالی که رندر سرور به Cloud Run logs ارسال میشود.
مشاهده خطاهای سرور
گزارش خطای ابری، خطاهای نمونهی App Hosting Cloud Run شما را تجمیع میکند. میتوانید به صورت اختیاری، گزارش خطای ابری را طوری پیکربندی کنید که هنگام بروز خطاهای جدید به شما اطلاع دهد .