Connect performance changes to app behavior

Investigate FPS drops, memory growth, and custom metric changes alongside the screens, interactions, and app state captured at the same time.

Telemetry turns runtime behavior into time-series evidence instead of isolated events. The local player aligns each channel with the session timeline so a reviewer can connect metric changes with screens, logs, touches, and app state.

Telemetry sources

Depending on SDK configuration, a session can contain:

  • FPS and frame timing;
  • memory usage;
  • battery level;
  • app lifecycle state;
  • custom counters, gauges, and state channels.

The host stores samples with timestamps and preserves their channel metadata for later review.

External process telemetry

External monitoring collects process telemetry where the platform permits it:

ChannelUnitAvailability
Process CPUMillicores; 1,000 equals one logical CPUiOS simulator and Android device process counters, when readable
Process RSSBytesiOS simulators and Android devices, when readable
Process physical footprintBytesiOS simulators
Process PSSBytesAndroid devices, when readable
Rendered frames per secondFPSAndroid gfxinfo frame statistics, when supported

iOS simulator FPS is currently unavailable. Android FPS measures newly rendered frames during an interval, so an idle screen may produce zero; unsupported or overflowed statistics are unavailable. Screenshot frequency is not app FPS. Provider and availability details are retained in session properties. CPU can exceed 1,000 millicores when multiple logical CPUs are busy. Simulator measurements describe that simulated run and should not be treated as physical-device results.

Review a range

Use a timeline range when you need statistics over one interaction and the full timeline when trend shape matters. Typical questions include:

  • Did memory climb throughout the flow or spike once?
  • Did FPS fall before or after navigation?
  • Did battery or lifecycle state change near the issue?
  • Which custom channel changed near a screenshot, gesture, or log cluster?

Add an annotation to preserve the conclusion or extract the relevant range into a focused session.

The player’s global Trends area groups monitored metrics by app. It shows the current measurement, reference, delta, decision, and stored history. Rebuild one app’s Trends history after changing workspace rules when you need stored measurements re-evaluated without rerunning the app.

Use ansight session metrics <session-id> --json for raw samples and ansight session telemetry analyze <session-id> --json for bounded FPS-drop and memory-spike findings. See CLI Commands.