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