REST Resource: projects.histories.executions.steps.perfMetricsSummary

Resource: PerfMetricsSummary

A summary of perf metrics collected and performance environment info

JSON representation
{
  "projectId": string,
  "historyId": string,
  "executionId": string,
  "stepId": string,
  "perfMetrics": [
    enum (PerfMetricType)
  ],
  "perfEnvironment": {
    object (PerfEnvironment)
  },
  "appStartTime": {
    object (AppStartTime)
  },
  "graphicsStats": {
    object (GraphicsStats)
  }
}
Fields
projectId

string

The cloud project

Note: This field is used in responses only. Any value specified here in a request is ignored.

historyId

string

A tool results history ID.

Note: This field is used in responses only. Any value specified here in a request is ignored.

executionId

string

A tool results execution ID.

Note: This field is used in responses only. Any value specified here in a request is ignored.

stepId

string

A tool results step ID.

Note: This field is used in responses only. Any value specified here in a request is ignored.

perfMetrics[]

enum (PerfMetricType)

Set of resource collected

perfEnvironment

object (PerfEnvironment)

Describes the environment in which the performance metrics were collected

appStartTime

object (AppStartTime)

graphicsStats

object (GraphicsStats)

Graphics statistics for the entire run. Statistics are reset at the beginning of the run and collected at the end of the run.

PerfEnvironment

Encapsulates performance environment info

JSON representation
{
  "cpuInfo": {
    object (CPUInfo)
  },
  "memoryInfo": {
    object (MemoryInfo)
  }
}
Fields
cpuInfo

object (CPUInfo)

CPU related environment info

memoryInfo

object (MemoryInfo)

Memory related environment info

CPUInfo

JSON representation
{
  "cpuProcessor": string,
  "cpuSpeedInGhz": number,
  "numberOfCores": integer
}
Fields
cpuProcessor

string

description of the device processor ie '1.8 GHz hexa core 64-bit ARMv8-A'

cpuSpeedInGhz

number

the CPU clock speed in GHz

numberOfCores

integer

the number of CPU cores

MemoryInfo

JSON representation
{
  "memoryTotalInKibibyte": string,
  "memoryCapInKibibyte": string
}
Fields
memoryTotalInKibibyte

string (int64 format)

Total memory available on the device in KiB

memoryCapInKibibyte

string (int64 format)

Maximum memory that can be allocated to the process in KiB

AppStartTime

JSON representation
{
  "initialDisplayTime": {
    object (Duration)
  },
  "fullyDrawnTime": {
    object (Duration)
  }
}
Fields
initialDisplayTime

object (Duration)

The time from app start to the first displayed activity being drawn, as reported in Logcat. See https://developer.android.com/topic/performance/launch-time.html#time-initial

fullyDrawnTime

object (Duration)

Optional. The time from app start to reaching the developer-reported "fully drawn" time. This is only stored if the app includes a call to Activity.reportFullyDrawn(). See https://developer.android.com/topic/performance/launch-time.html#time-full

GraphicsStats

Graphics statistics for the App. The information is collected from 'adb shell dumpsys graphicsstats'. For more info see: https://developer.android.com/training/testing/performance.html Statistics will only be present for API 23+.

JSON representation
{
  "totalFrames": string,
  "jankyFrames": string,
  "p50Millis": string,
  "p90Millis": string,
  "p95Millis": string,
  "p99Millis": string,
  "missedVsyncCount": string,
  "highInputLatencyCount": string,
  "slowUiThreadCount": string,
  "slowBitmapUploadCount": string,
  "slowDrawCount": string,
  "buckets": [
    {
      object (Bucket)
    }
  ]
}
Fields
totalFrames

string (int64 format)

Total frames rendered by package.

jankyFrames

string (int64 format)

Total frames with slow render time. Should be <= totalFrames.

p50Millis

string (int64 format)

50th percentile frame render time in milliseconds.

p90Millis

string (int64 format)

90th percentile frame render time in milliseconds.

p95Millis

string (int64 format)

95th percentile frame render time in milliseconds.

p99Millis

string (int64 format)

99th percentile frame render time in milliseconds.

missedVsyncCount

string (int64 format)

Total "missed vsync" events.

highInputLatencyCount

string (int64 format)

Total "high input latency" events.

slowUiThreadCount

string (int64 format)

Total "slow UI thread" events.

slowBitmapUploadCount

string (int64 format)

Total "slow bitmap upload" events.

slowDrawCount

string (int64 format)

Total "slow draw" events.

buckets[]

object (Bucket)

Histogram of frame render times. There should be 154 buckets ranging from [5ms, 6ms) to [4950ms, infinity)

Bucket

JSON representation
{
  "renderMillis": string,
  "frameCount": string
}
Fields
renderMillis

string (int64 format)

Lower bound of render time in milliseconds.

frameCount

string (int64 format)

Number of frames in the bucket.

Methods

create

Creates a PerfMetricsSummary resource.