StatsdBeforeAfterGaugeMetricPostProcessor

public class StatsdBeforeAfterGaugeMetricPostProcessor
extends StatsdGenericPostProcessor

java.lang.Object
   ↳ com.android.tradefed.postprocessor.BasePostProcessor
     ↳ com.android.tradefed.postprocessor.StatsdGenericPostProcessor
       ↳ com.android.tradefed.postprocessor.StatsdBeforeAfterGaugeMetricPostProcessor


Ein Post-Prozessor, der Messwerte vom Typ „Gauge“ verarbeitet, die nach dem „Vorher/Nachher“-Ansatz erfasst wurden, d. h. ein Snapshot vor einem Test/Lauf und einer danach. Er ruft Messwerte anhand einer bereitgestellten Liste von Messwertformatierern ab und meldet deren Deltas.

So erfasste Messwerte sehen so aus: (Messwerte befinden sich in den Atomen)

 reports {
   metrics {
     gauge_metrics {
       data {
         # Bucket for the "before" snapshot
         bucket_info {
           atom {...}
           atom {...}
           ...
         }
         # Bucket for the "after" snapshot
         bucket_info {
           atom {...}
           atom {...}
           ...
         }
       }
     }
     ...
   }
   ...
 }
 

Wenn der bereitgestellte Messwert-Formatter beispielsweise on_device_power_measurement für den Schlüssel und [subsystem_name]-[rail_name]=[energy_microwatt_secs] für den Wert ist, sieht der Messwert für ein Atom, in dem subsystem_name display, rail_name RAIL_NAME und energy_microwatt_secs 10 ist, so aus: statsd-<config name>-gauge-on_device_power_measurement-delta-display-RAIL_NAME=10.

Die Vorher-/Nachher-Messwerte werden für die Deltaberechnung anhand ihres Namens abgeglichen. Es wird also davon ausgegangen, dass die Formatierung dafür sorgt, dass für jeden Snapshot eindeutige Messwertgruppen generiert werden. Der Prozessor generiert in den folgenden Szenarien Warnungen:

  • Innerhalb jedes Snapshots werden von den Formattern doppelte Messwertschlüssel generiert.
  • Ein Atom- oder Messwertschlüssel ist in einem Snapshot, aber nicht im anderen vorhanden.

Zusammenfassung

Öffentliche Konstruktoren

StatsdBeforeAfterGaugeMetricPostProcessor()

Geschützte Methoden

void logFormattedWarning(String message)

Wrapper um CLog.w(), mit dem Tests die formatierte Warnung beobachten können.

Map<String, MetricMeasurement.Metric.Builder> parseMetricsFromReportList(StatsLog.ConfigMetricsReportList reportList)

Parsen Sie die Zählermesswerte aus ConfigMetricsReportList mit den Atom-Formatierern.

Öffentliche Konstruktoren

StatsdBeforeAfterGaugeMetricPostProcessor

public StatsdBeforeAfterGaugeMetricPostProcessor ()

Geschützte Methoden

logFormattedWarning

protected void logFormattedWarning (String message)

Wrapper um CLog.w(), mit dem Tests die formatierte Warnung beobachten können.

Parameter
message String

parseMetricsFromReportList

protected Map<String, MetricMeasurement.Metric.Builder> parseMetricsFromReportList (StatsLog.ConfigMetricsReportList reportList)

Parsen Sie die Zählermesswerte aus ConfigMetricsReportList mit den Atom-Formatierern.

Ereignismesswerte, die zu doppelten Schlüsseln führen, werden als kommagetrennte Werte gespeichert.

Parameter
reportList StatsLog.ConfigMetricsReportList

Gibt zurück
Map<String, MetricMeasurement.Metric.Builder>