יש שתי דרכים לשלוח שגיאות מהאפליקציות שלכם ב-Google Kubernetes Engine אל Error Reporting:
על ידי רישום ביומן ב-Cloud Logging. אם אתם כבר משתמשים ב-Cloud Logging, הדרישה הנוספת היחידה היא שרשומות היומן יהיו מזוהות על ידי Error Reporting. מידע נוסף על דרישות הפורמט של שגיאות זמין במאמר עיצוב שגיאות ב-Cloud Logging.
באמצעות Error Reporting API. האפליקציה יכולה לשלוח בקשות HTTP באמצעות API בארכיטקטורת REST, או להשתמש בספריות ניסיוניות בכמה שפות.
שימוש ברישום ביומן כדי לדווח על שגיאות
סוכן הרישום ביומן ברירת המחדל של GKE מספק פתרון מנוהל לפריסה ולניהול של הסוכנים ששולחים את היומנים של האשכולות ל-Cloud Logging. המבנה של הסוכן תלוי בגרסה של האשכול. מידע על הסוכן הזה זמין במאמר בנושא ניהול יומנים ב-GKE.
Error Reporting דורש שחריגים או עקבות מחסנית ייכללו ברשומת יומן אחת. רוב סוכני הרישום יכולים לזהות שכמה שורות ביומן – מסגרות סטאק שמודפסות כל אחת בשורה חדשה – מייצגות דוח קריסות, ולשלוח אותן ל-Cloud Logging כרשומה אחת ביומן.
אם הסוכן לא יכול לשחזר כמה שורות כשגיאה אחת, צריך להשתמש בנקודת קצה ל-API projects.events.report, שמאפשרת לשלוט בתוכן של שגיאה.
שימוש ב-Error Reporting API כדי לכתוב שגיאות
Error Reporting API מספק נקודת קצה report לכתיבת מידע על שגיאות לשירות.
מפעילים את Error Reporting API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (
roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאהserviceusage.services.enable. איך מקצים תפקידיםאפשר לדווח על שגיאות ל-API באמצעות API בארכיטקטורת REST או ספריית לקוח.
דוגמאות
ASP.NET
חבילת ה-NuGet של ASP.NET מדווחת על חריגים שלא זוהו מאפליקציות אינטרנט של ASP.NET אל Error Reporting.
התקנת חבילת NuGet
כדי להתקין את חבילת Stackdriver ASP.NET NuGet ב-Visual Studio:
- לוחצים לחיצה ימנית על הפתרון ובוחרים באפשרות Manage NuGet packages for solution (ניהול חבילות NuGet לפתרון).
- מסמנים את תיבת הסימון Include prerelease (הכללת גרסת טרום-הפצה).
- מחפשים את החבילה בשם
Google.Cloud.Diagnostics.AspNetומתקינים אותה.
Usage
אחרי שמתקינים את חבילת Stackdriver ASP.NET NuGet, מוסיפים את ההצהרה הבאה לקוד האפליקציה כדי להתחיל לשלוח שגיאות ל-Stackdriver:
using Google.Cloud.Diagnostics.AspNet;
כדי להפעיל את הדיווח על חריגים, מוסיפים את הקוד HttpConfiguration הבא לשיטה Register של אפליקציית האינטרנט שלכם ב-.NET אחרי שמחליפים את your-project-id במזהה הפרויקט בפועל:
אחרי שמוסיפים את השיטה הזו לאפליקציית ASP.NET, אפשר לראות את כל החריגים שלא נתפסו שמתרחשים בזמן שהם מדווחים ל- Google Cloudבקטע Error Reporting במסוף Google Cloud .
C#
הדוגמה הבאה מופיעה במאגר GoogleCloudPlatform/dotnet-docs-samples. כדי להשתמש בו, אחרי שיוצרים את הפרויקט, מציינים את מזהה הפרויקט:
C:\...\bin\Debug> set GOOGLE_PROJECT_ID=[YOUR_PROJECT_ID]
חשוב להקפיד להחליף את [YOUR_PROJECT_ID] בערך הנכון מהמסוףGoogle Cloud .
לאחר מכן, שולחים נתוני חריגים באמצעות קוד שדומה לקוד הבא:
המשך
Java
Node.js
Ruby
אפשר לקרוא על הגדרת Error Reporting עבור Ruby.
Python
PHP
הצגת קבוצות של שגיאות
נכנסים לדף Error Reporting במסוף Google Cloud :
אפשר גם להשתמש בסרגל החיפוש כדי למצוא את הדף הזה.