סטטיסטיקה

מודול Statsd כולל statsd, שירות מקורי שפועל ברקע איסוף מדדים, ואת שירות Java StatsCompanionService , הפועל בתהליך המערכת ומגשר בין statsd ו-Java. מודול זה ניתן לעדכון, כלומר הוא יכול לקבל עדכונים לפונקציונליות (כגון עדכונים למדדים המשמשים באיסוף נתונים) מחוץ למחזור השחרור הרגיל של אנדרואיד.

גבול מודול

Statsd היא נקודת המגע העיקרית בין הפלטפורמה לאיסוף נתוני בטיחות השיגור. מודול statsd כולל את הקוד הבא.

  • statsd , הממוקם ב- frameworks/base/cmds/statsd

  • StatsCompanionService , ממוקם ב- frameworks/base/services/core/java/com/android/server/stats/StatsCompanionService.java

  • תת-קבוצה של מבני פרוטובוף הפלטפורמה, הממוקמת בעיקר frameworks/base/core/proto

כשירות מקורי, statsd יכול להאריך ימים יותר מהמסגרת ולזהות קריסות ב- system_server עצמו.

באנדרואיד 12, קוד מודול Statsd מועבר מ- frameworks/base/cmds/StatsD , frameworks/base/apex/StatsD ו- system/core/libstats .

מבנה פרויקט חדש

  • system/core/libstatspackages/modules/StatsD/lib/libstats
    • system/core/libstats/socketpackages/modules/StatsD/lib/libstatssocket
    • system/core/libstats/pullpackages/modules/StatsD/lib/libstatspull
  • frameworks/base/cmds/StatsDpackages/modules/StatsD/bin
  • frameworks/base/apex/StatsD
    • העתק את הרמה העליונה כפי שהיא
    • העבר jni framework/jni
    • העבר קבצים ברמה העליונה לתוך ספריית /apex
      • frameworks/base/apex/StatsD/\*packages/modules/StatsD/apex/\*
      • frameworks/base/apex/StatsD/jnipackages/modules/StatsD/apex/framework/jni
  • cts/hostsidetests/StatsDpackages/modules/StatsD/tests

תיקון העבר פקודות לדוגמה

החל את השינויים על הסניפים הבאים:

  • goog/mainline-prod
  • goog/main
  • goog/\*-plus-aosp
  • aosp/main

ההיסטוריה של הקבצים בתוך Statsd צריכה להישמר.

פורמט מודול

מודול ה-statsd ( com.android.os.statsd ) הוא בפורמט APEX וזמין עבור מכשירים עם אנדרואיד 11 ומעלה.

תלות במודול

מודול Statsd מציג קבוצה של @hide APIs לרישום אירועים מהמערכת. עבור קוד Java, רוב ממשקי ה-API @hide משוחזרים כך שהם בנויים על קבוצה קטנה יותר של שיטות מתויגות @SystemApi , עם קוד דבק קטן שנוצר מובנה. עבור קוד מקורי, פונקציות מקוריות קיימות משוחזרות להיות ממשקי API רשמיים של VNDK C, עם יצירת קוד דבק. דֶבֶק.

התאמה אישית

מודול Statsd אינו תומך בהתאמה אישית.

בדיקה

ה-Android Compatibility Test Suite (CTS) מאמת את הפונקציונליות של statsd ואת האטומים שבהם תלוי ניהול השחרור.