RuntimeRestartCollector

public class RuntimeRestartCollector
extends BaseDeviceMetricCollector

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


Collector, der Zeitstempel von Laufzeitneustarts (Systemserverabstürzen) während des Tests erfasst, falls vorhanden.

Die Ergebnisse werden in Zählwerten, in Sekunden und im Format „HH:mm:ss“ sowie in Nanosekunden und im Format „HH:mm:ss“ ausgegeben.

Dieser Collector verwendet zwei Quellen für Systemserverabstürze:

  1. Die Liste „system_restart_sec“ aus StatsdStatsReport ist eine rollierende Liste mit 20 Zeitstempeln in Sekunden, die auf Systemserverabstürze zurückzuführen sind. Neuere Abstürze werden am Ende angehängt. Wenn die Liste voll ist, werden ältere Zeitstempel am Anfang entfernt.
  2. Das StatsD-Atom „AppCrashOccurred“, bei dem ein Systemserverabsturz als Absturz des Prozesses „system_server“ angezeigt wird (dieses Verhalten ist in der Definition „statsd atoms.proto“ dokumentiert). Der Ereignismesswert gibt die Gerätebetriebszeit an, zu der der Absturz auftritt.

Beide können nützliche Informationen sein, da mit der ersten die Zeitstempel in Protokollen leicht abgeglichen werden können, während die letzte als Messwert für die Lebensdauer dient.

Zusammenfassung

Felder

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

Öffentliche Konstruktoren

RuntimeRestartCollector()

Öffentliche Methoden

void onTestRunEnd(DeviceMetricData runData, currentRunMetrics)

Rufen Sie die Zeitstempel am Ende des Testlaufs ab und geben Sie gegebenenfalls den Unterschied zu vorhandenen Zeitstempeln an.

void onTestRunStart(DeviceMetricData runData)

Speichern Sie die vorhandenen Zeitstempel der Systemserverneustarts vor dem Testlauf, da StatsD ein laufendes Protokoll davon führt, und schieben Sie die Konfiguration, um App-Abstürze zu erfassen.

Felder

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

Öffentliche Konstruktoren

RuntimeRestartCollector

public RuntimeRestartCollector ()

Öffentliche Methoden

onTestRunEnd

public void onTestRunEnd (DeviceMetricData runData, 
                 currentRunMetrics)

Rufen Sie die Zeitstempel am Ende des Testlaufs ab und geben Sie gegebenenfalls den Unterschied zu vorhandenen Zeitstempeln an.

Parameter
runData DeviceMetricData: die DeviceMetricData, die die Daten für den Lauf enthält. Dies ist dasselbe Objekt wie bei onTestRunStart(com.android.tradefed.device.metric.DeviceMetricData).

currentRunMetrics : Die aktuelle Zuordnung von Messwerten, die an ERROR(/#testRunEnded(long,Map)) übergeben werden.

Ausgabe
DeviceNotAvailableException

onTestRunStart

public void onTestRunStart (DeviceMetricData runData)

Speichern Sie die vorhandenen Zeitstempel der Systemserverneustarts vor dem Testlauf, da StatsD ein laufendes Protokoll davon führt, und schieben Sie die Konfiguration, um App-Abstürze zu erfassen.

Parameter
runData DeviceMetricData: die DeviceMetricData, die die Daten für den Lauf enthält.

Ausgabe
DeviceNotAvailableException