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 फ़ॉर्मैट में दिखाता है.
यह कलेक्टर, सिस्टम सर्वर क्रैश होने की जानकारी के लिए दो सोर्स का इस्तेमाल करता है:
- StatsdStatsReport से system_restart_sec की सूची. यह सूची, सिस्टम सर्वर क्रैश होने पर 20 टाइमस्टैंप की रोलिंग सूची होती है. इसमें टाइमस्टैंप को सेकंड में दिखाया जाता है. नए क्रैश होने पर, टाइमस्टैंप को सूची के आखिर में जोड़ दिया जाता है. सूची पूरी होने पर, पुराने टाइमस्टैंप सूची की शुरुआत से हट जाते हैं.
- AppCrashOccurred statsd ऐटम, जहां सिस्टम सर्वर क्रैश होने की जानकारी, system_server प्रोसेस क्रैश होने के तौर पर दिखती है. इस व्यवहार के बारे में, statsd atoms.proto की परिभाषा में बताया गया है. इस इवेंट मेट्रिक से, क्रैश होने के समय डिवाइस के चालू रहने की जानकारी मिलती है.
दोनों ही जानकारी काम की हो सकती हैं. पहली जानकारी से, लॉग में टाइमस्टैंप को आसानी से कोरिलेट किया जा सकता है. वहीं, दूसरी जानकारी से यह पता चलता है कि उपयोगकर्ता कितनी बार ऐप्लिकेशन का इस्तेमाल करता है.
खास जानकारी
कॉन्स्टेंट | |
|---|---|
String |
METRIC_PREFIX
|
String |
METRIC_SUFFIX_COUNT
|
String |
METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED
|
String |
METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS
|
String |
METRIC_SUFFIX_UPTIME_FORMATTED
|
String |
METRIC_SUFFIX_UPTIME_NANOS
|
String |
SYSTEM_SERVER_KEYWORD
|
फ़ील्ड | |
|---|---|
public
static
final
SimpleDateFormat |
TIME_FORMATTER
|
सार्वजनिक कंस्ट्रक्टर | |
|---|---|
RuntimeRestartCollector()
|
|
पब्लिक मेथड | |
|---|---|
void
|
onTestRunEnd(DeviceMetricData runData, Map<String, MetricMeasurement.Metric> currentRunMetrics)
टेस्ट रन के आखिर में टाइमस्टैंप निकालें और मौजूदा टाइमस्टैंप से उनके अंतर की जानकारी दें. |
void
|
onTestRunStart(DeviceMetricData runData)
टेस्ट रन से पहले, सिस्टम सर्वर के रीस्टार्ट होने के मौजूदा टाइमस्टैंप सेव करें. ऐसा इसलिए, क्योंकि statsd इनका लॉग सेव करता है. साथ ही, ऐप्लिकेशन क्रैश होने की जानकारी इकट्ठा करने के लिए कॉन्फ़िगरेशन को पुश करें. |
कॉन्स्टेंट
METRIC_PREFIX
public static final String METRIC_PREFIX
कॉन्स्टेंट वैल्यू: "runtime-restart"
METRIC_SUFFIX_COUNT
public static final String METRIC_SUFFIX_COUNT
कॉन्स्टेंट वैल्यू: "count"
METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED
public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_FORMATTED
कॉन्स्टेंट वैल्यू: "timestamps_str"
METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS
public static final String METRIC_SUFFIX_SYSTEM_TIMESTAMP_SECS
कॉन्स्टेंट वैल्यू: "timestamps_secs"
METRIC_SUFFIX_UPTIME_FORMATTED
public static final String METRIC_SUFFIX_UPTIME_FORMATTED
कॉन्स्टेंट वैल्यू: "uptime_str"
METRIC_SUFFIX_UPTIME_NANOS
public static final String METRIC_SUFFIX_UPTIME_NANOS
कॉन्स्टेंट वैल्यू: "uptime_nanos"
SYSTEM_SERVER_KEYWORD
public static final String SYSTEM_SERVER_KEYWORD
कॉन्स्टेंट वैल्यू: "system_server"
फ़ील्ड
TIME_FORMATTER
public static final SimpleDateFormat TIME_FORMATTER
सार्वजनिक कंस्ट्रक्टर
RuntimeRestartCollector
public RuntimeRestartCollector ()
पब्लिक मेथड
onTestRunEnd
public void onTestRunEnd (DeviceMetricData runData, Map<String, MetricMeasurement.Metric> currentRunMetrics)
टेस्ट रन के आखिर में टाइमस्टैंप निकालें और मौजूदा टाइमस्टैंप से उनके अंतर की जानकारी दें.
| पैरामीटर | |
|---|---|
runData |
DeviceMetricData: यह DeviceMetricData है, जिसमें रन के लिए डेटा होता है. यह onTestRunStart(DeviceMetricData) के दौरान इस्तेमाल किए गए ऑब्जेक्ट जैसा ही होगा. |
currentRunMetrics |
Map: testRunEnded(long,Map) को पास की गई मेट्रिक का मौजूदा मैप. |
| थ्रो | |
|---|---|
DeviceNotAvailableException |
|
onTestRunStart
public void onTestRunStart (DeviceMetricData runData)
टेस्ट रन से पहले, सिस्टम सर्वर के रीस्टार्ट होने के मौजूदा टाइमस्टैंप सेव करें. ऐसा इसलिए, क्योंकि statsd इनका लॉग सेव करता रहता है. साथ ही, ऐप्लिकेशन क्रैश होने की जानकारी इकट्ठा करने के लिए कॉन्फ़िगरेशन को पुश करें.
| पैरामीटर | |
|---|---|
runData |
DeviceMetricData: यह DeviceMetricData है, जिसमें रन के लिए डेटा होता है. |
| थ्रो | |
|---|---|
DeviceNotAvailableException |
|