RuntimeRestartCollector

public class RuntimeRestartCollector
extends BaseDeviceMetricCollector

java.lang.Object
   ↳ com.android.tradefed.device.metric.BaseDeviceMetricCollector
     ↳ com.android.tradefed.device.metric.RuntimeRestartCollector


यह एक कलेक्टर है, जो टेस्ट के दौरान रनटाइम रीस्टार्ट (सिस्टम सर्वर क्रैश) के टाइमस्टैंप इकट्ठा करता है.

यह फ़ंक्शन, गिनती के नतीजे, सेकंड और HH:mm:ss फ़ॉर्मैट में दी गई टाइमस्टैंप, और नैनोसेकंड और HH:mm:ss फ़ॉर्मैट में सिस्टम के अपटाइम की जानकारी दिखाता है.

यह कलेक्टर, सिस्टम सर्वर के क्रैश होने की जानकारी के लिए दो सोर्स का इस्तेमाल करता है:

  1. StatsdStatsReport से मिली system_restart_sec सूची, जो सिस्टम सर्वर के क्रैश होने पर सेकंड में 20 टाइमस्टैंप की रोलिंग सूची होती है. इसमें नए क्रैश, सूची के आखिर में जोड़े जाते हैं. सूची भर जाने पर, शुरुआत में मौजूद पुराने टाइमस्टैंप हट जाते हैं.
  2. AppCrashOccurred statsd एटम, जहां सिस्टम सर्वर क्रैश, system_server प्रोसेस क्रैश के तौर पर दिखता है. इस व्यवहार की जानकारी, statsd atoms.proto की परिभाषा में दी गई है. इवेंट मेट्रिक से, क्रैश होने पर डिवाइस के अपटाइम की जानकारी मिलती है.

दोनों ही जानकारी काम की हो सकती है. पहले से, लॉग में टाइमस्टैंप को आसानी से जोड़ा जा सकता है, जबकि बाद वाली जानकारी, लॉन्च के बाद के समय की मेट्रिक के तौर पर काम करती है.

खास जानकारी

फ़ील्ड्स की फ़िल्में

public static final String METRIC_PREFIX

public static final String METRIC_SUFFIX_COUNT

public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED

public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS

public static final String METRIC_SUFFIX_UPTIME_FORMATTED

public static final String METRIC_SUFFIX_UPTIME_NANOS

public static final String SYSTEM_SERVER_KEYWORD

public static final SimpleDateFormat TIME_FORMATTER

पब्लिक कंस्ट्रक्टर

RuntimeRestartCollector()

सार्वजनिक तरीके

void onTestRunEnd(DeviceMetricData runData, currentRunMetrics)

टेस्ट रन के आखिर में टाइमस्टैंप खींचें और अगर कोई अंतर है, तो मौजूदा टाइमस्टैंप के साथ अंतर की रिपोर्ट करें.

void onTestRunStart(DeviceMetricData runData)

टेस्ट रन से पहले, सिस्टम सर्वर के रीस्टार्ट होने के मौजूदा टाइमस्टैंप सेव करें, क्योंकि statsd उनका एक रनिंग लॉग बनाए रखता है. साथ ही, ऐप्लिकेशन के क्रैश इकट्ठा करने के लिए कॉन्फ़िगरेशन को पुश करें.

फ़ील्ड्स की फ़िल्में

METRIC_PREFIX

public static final String METRIC_PREFIX

METRIC_SUFFIX_COUNT

public static final String METRIC_SUFFIX_COUNT

METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED

public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED

METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS

public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS

METRIC_SUFFIX_UPTIME_FORMATTED

public static final String METRIC_SUFFIX_UPTIME_FORMATTED

METRIC_SUFFIX_UPTIME_NANOS

public static final String METRIC_SUFFIX_UPTIME_NANOS

SYSTEM_SERVER_KEYWORD

public static final String SYSTEM_SERVER_KEYWORD

TIME_FORMATTER

public static final SimpleDateFormat TIME_FORMATTER

पब्लिक कंस्ट्रक्टर

RuntimeRestartCollector

public RuntimeRestartCollector ()

सार्वजनिक तरीके

onTestRunEnd

public void onTestRunEnd (DeviceMetricData runData, 
                 currentRunMetrics)

टेस्ट रन के आखिर में टाइमस्टैंप खींचें और मौजूदा टाइमस्टैंप के साथ अंतर की रिपोर्ट करें.

पैरामीटर
runData DeviceMetricData: DeviceMetricData, जिसमें रन का डेटा सेव है. यह वही ऑब्जेक्ट होगा जो onTestRunStart(com.android.tradefed.device.metric.DeviceMetricData) के दौरान था.

currentRunMetrics : ERROR(/#testRunEnded(long,Map)) को भेजी गई मेट्रिक का मौजूदा मैप.

थ्रो
DeviceNotAvailableException

onTestRunStart

public void onTestRunStart (DeviceMetricData runData)

टेस्ट रन से पहले, सिस्टम सर्वर के रीस्टार्ट होने के मौजूदा टाइमस्टैंप सेव करें, क्योंकि statsd उनका एक रनिंग लॉग बनाए रखता है. साथ ही, ऐप्लिकेशन के क्रैश इकट्ठा करने के लिए कॉन्फ़िगरेशन को पुश करें.

पैरामीटर
runData DeviceMetricData: DeviceMetricData, जिसमें रन का डेटा सेव है.

थ्रो
DeviceNotAvailableException