הסבר על אימות מסלולים

אחרי שיוצרים מסלול, ה-API לבחירת כבישים מבצע תהליך אימות. האימות הזה מבטיח שהמסלול מתאים לאיסוף נתונים ולעדכונים בתוך התכונה 'תובנות לניהול כבישים'. בדרך כלל התהליך מסתיים תוך כמה דקות.

אפשר לעקוב אחרי סטטוס האימות של המסלולים באמצעות השדה state בתגובת ה-API. אפשר לבדוק את זה באמצעות נקודת הקצה get, כמו שמתואר במאמר קבלת מסלולים נבחרים, או על ידי בדיקת הטבלה routes_status ב-BigQuery.

מצבי מסלול

השדה state במשאב SelectedRoute מציין את הסטטוס הנוכחי של האימות והתפעול שלו. השדה state יכול לקבל את הערכים הבאים:

  • STATE_UNSPECIFIED: מצב האימות של המסלול הזה לא מוגדר.
  • STATE_VALIDATING: המסלול נמצא בתהליך אימות.
  • STATE_RUNNING: המסלול עבר את האימות בהצלחה והוא פעיל עכשיו. ממשק ה-API אוסף נתונים באופן פעיל ושולח עדכונים תקופתיים לגבי המסלול הזה אל BigQuery, אל Pub/Sub או אל שניהם.
  • STATE_DELETING: המסלול סומן למחיקה והוא מוסר מהמערכת.
  • STATE_INVALID: המסלול לא עבר אימות על סמך קריטריונים ספציפיים. כשמסלול נמצא במצב STATE_INVALID, התשובה כוללת את השדה validationError עם פרטים על הסיבה לכשל באימות.

שגיאות אימות

כשהערך של state במשאב SelectedRoute הוא STATE_INVALID, תגובת ה-API כוללת את השדה validationError. בשדה הזה מצוין הסבר ספציפי לכשל באימות.

השדה validationError יכול לקבל את הערכים הבאים:

  • VALIDATION_ERROR_UNSPECIFIED: שגיאת האימות של המסלול הזה לא מוגדרת.
  • VALIDATION_ERROR_ROUTE_OUTSIDE_JURISDICTION: המסלול נמצא מחוץ לתחום השיפוט המורשה של הפרויקט.
  • VALIDATION_ERROR_LOW_ROAD_USAGE: המסלול לא נמצא בשימוש רב, כלומר אי אפשר לאסוף מספיק נתוני תנועה כדי לבצע ניתוח משמעותי. מסלול שסווג כלא תקין בגלל שימוש נמוך בכביש עשוי להיות תקין שוב אם נפח התנועה יעלה מעל סף שנקבע מראש. מידע נוסף זמין במאמר מסלול עם שימוש מועט בכבישים.

מסלול עם שימוש נמוך בכבישים

יכול להיות שתווית VALIDATION_ERROR_LOW_ROAD_USAGE תופיע לצד מסלולים אם ה-API יקבע שאין מספיק נתונים על תנועת הגולשים כדי לבצע ניתוח עקבי. זה יכול לקרות במהלך האימות הראשוני או במהלך הערכות שוטפות.

כך זה עובד במסלולים עם שימוש נמוך בכבישים:

  • הפרסום של נתונים ב-BigQuery נמשך: גם אם מסלול מסוים מסווג כSTATE_INVALID בגלל שימוש נמוך בכביש, ה-API ממשיך לעבד ולפרסם ב-BigQuery את כל הנתונים שזמינים לגבי המסלול הזה.
  • העדכונים של Pub/Sub מפסיקים: אם הערך של state במסלול משתנה ל-STATE_INVALID, העדכונים התקופתיים בזמן אמת של Pub/Sub מפסיקים.
  • הערכות רבעוניות: ה-API מבצע הערכות רבעוניות של כל המסלולים הפעילים כדי לבדוק את נפח התנועה.
    • אם המערכת מזהה נפח תנועה נמוך במהלך ההערכה, ה-API מציג אזהרה במשאב SelectedRoute.
    • אם נפח התנועה הנמוך נמשך במשך ארבעה רבעונים רצופים, הערך של המסלול state משתנה ל-STATE_INVALID, והעדכונים של Pub/Sub מפסיקים.
  • אפשר לבצע אימות מחדש: גם אם מסלול מסוים הוא STATE_INVALID, הוא עדיין נתון לבדיקות תנועה שוטפות. יכול להיות שבבדיקות הבאות המסלול יסווג מחדש כחוקי (STATE_RUNNING) אם נפח התנועה בו יעלה מעל סף שנקבע מראש.
  • מעקב אחרי הסטטוס: אפשר לעקוב אחרי סטטוס האימות של מסלול דרך נקודת הקצה get, כמו שמתואר במאמר קבלת מסלולים נבחרים, או על ידי בדיקת הטבלה routes_status ב-BigQuery.

פתרון בעיות שקשורות לנתיבים לא תקינים

אם המסלול state הוא STATE_INVALID, פועלים לפי ההנחיות הבאות לפתרון בעיות בהתאם לvalidationError שקיבלתם:

  • VALIDATION_ERROR_ROUTE_OUTSIDE_JURISDICTION: השגיאה הזו מציינת שהמסלול שהוגדר חורג מהאזור הגיאוגרפי שאושר לפרויקט שלכם. כדי לפתור את הבעיה, צריך למחוק את המסלול הקיים וליצור אותו מחדש, ולוודא שכל הנקודות שלו (נקודת המוצא, היעד וכל נקודות הביניים) נמצאות בתחום השיפוט של הפרויקט המורשה.

  • VALIDATION_ERROR_LOW_ROAD_USAGE: השגיאה הזו מציינת שבמסלול שנבחר אין מספיק נתונים על השימוש בדרכים כדי לבצע ניתוח משמעותי ועדכונים. כדי לפתור את הבעיה, צריך למחוק את המסלול הקיים וליצור אותו מחדש, ולבחור אזור עם שימוש גבוה יותר בכבישים או עם עומס תנועה גבוה יותר לאיסוף הנתונים. שימו לב: אם המסלול שלכם כולל את השגיאה הזו, הסטטוס של המסלול יכול לחזור ל-STATE_RUNNING אם נפח התנועה גדל לאורך זמן, כפי שמתואר במאמר בנושא מסלול עם שימוש נמוך.