आंकड़े वाले

Stated मॉड्यूल में आंकड़े शामिल हैं, जो बैकग्राउंड इकट्ठा करने वाली मेट्रिक में चलने वाली नेटिव सेवा और Java सेवा StatsCompanionService शामिल है. यह सिस्टम प्रोसेस में चलती है और आंकड़ों और Java को आपस में जोड़ती है. इस मॉड्यूल को अपडेट किया जा सकता है. इसका मतलब है कि Android के रिलीज़ साइकल के बाहर, इस मॉड्यूल के फ़ंक्शन को अपडेट किया जा सकता है. जैसे, डेटा इकट्ठा करने के लिए इस्तेमाल की जाने वाली मेट्रिक को अपडेट किया जा सकता है.

मॉड्यूल की सीमा

Statsd, प्लैटफ़ॉर्म और लॉन्च से जुड़ी सुरक्षा से जुड़े डेटा इकट्ठा करने के बीच मुख्य टचपॉइंट है. statsd मॉड्यूल में यह कोड शामिल होता है.

  • frameworks/base/cmds/statsd में मौजूद statsd

  • frameworks/base/services/core/java/com/android/server/stats/StatsCompanionService.java में मौजूद StatsCompanionService

  • प्लैटफ़ॉर्म प्रोटोबफ़ स्ट्रक्चर का एक सबसेट, जो मुख्य रूप से frameworks/base/core/proto में मौजूद है

नेटिव सेवा के तौर पर, statsd फ़्रेमवर्क के बंद होने के बाद भी काम कर सकती है. साथ ही, यह system_server में क्रैश का पता लगा सकती है.

Android 12 में, आंकड़े वाले मॉड्यूल कोड को 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

Statd में मौजूद फ़ाइलों का इतिहास सुरक्षित रखा जाना चाहिए.

मॉड्यूल का फ़ॉर्मैट

statsd मॉड्यूल (com.android.os.statsd), APEX फ़ॉर्मैट में है. यह Android 11 या इसके बाद के वर्शन वाले डिवाइसों के लिए उपलब्ध है.

मॉड्यूल की डिपेंडेंसी

Statsd मॉड्यूल, सिस्टम से इवेंट को लॉग करने के लिए @hide एपीआई का एक सेट उपलब्ध कराता है. Java कोड के लिए, ज़्यादातर @hide एपीआई को @SystemApi टैग किए गए तरीकों के छोटे सेट पर बनाए जाने के लिए फिर से तैयार किया जाता है. साथ ही, इसमें जनरेट किया गया कुछ छोटा ग्लू कोड भी पहले से मौजूद होता है. नेटिव कोड के लिए, मौजूदा नेटिव फ़ंक्शन को जनरेट किए गए ग्लू के साथ आधिकारिक वीएनडीके सी एपीआई में बदला जाता है.

पसंद के मुताबिक बनाएं

Statsd मॉड्यूल को पसंद के मुताबिक नहीं बनाया जा सकता.

टेस्ट करना

Android Compatibility Test Suite (CTS), statsd और उन एटम की जांच करता है जिन पर रिलीज़ मैनेजमेंट निर्भर करता है.