metrickit

Collect aggregated performance metrics and diagnostic crash data from Apple devices via MetricKit.

Updated May 10, 2026
One-click install
npx skills add https://github.com/FelixRauch/medat-figuren --skill metrickit-felixrauch
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: metrickit
Source: https://github.com/FelixRauch/medat-figuren/tree/main/.agents/skills/metrickit
Command: npx skills add https://github.com/FelixRauch/medat-figuren --skill metrickit-felixrauch

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

MetricKit helps you collect aggregated performance metrics and actionable crash/hang diagnostics from real devices so you can spot and triage regressions instead of guessing.

Core Features & Use Cases

  • On-device metric aggregation: Receive daily MXMetricPayloads covering CPU time, memory peaks, launch time, hang rate, animation hitch metrics, and network transfer.
  • Immediate diagnostic reporting: Get MXDiagnosticPayloads for crashes, hangs, disk-write exceptions, CPU exceptions, and slow app launches (where supported).
  • Deep triage with call stack trees: Extract MXCallStackTree JSON for symbolication and debugging, plus persist/export payload JSON for offline analysis and backend ingestion.
  • Custom performance instrumentation: Add signpost metrics via mxSignpost (with MXMetricManager log handles) to measure critical code paths.

Quick Start

Register an MXMetricManagerSubscriber as early as possible (for example in App initialization) and implement both didReceive callbacks to persist payload JSON before processing it.

Frequently Asked Questions about metrickit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I collect crash and hang diagnostics from iOS production devices?

You collect crash and hang diagnostics from iOS production devices by subscribing an MXMetricManagerSubscriber to receive MXDiagnosticPayloads, then exporting the jsonRepresentation data for backend ingestion and offline analysis.

What performance metrics can I monitor on-device using MetricKit?

MetricKit delivers daily MXMetricPayloads for on-device analytics covering CPU time, memory peaks, launch time, hang rate, animation hitch metrics, and network transfer to help triage performance regressions.

How do I extract call stack trees for symbolication and debugging?

You extract call stack trees for symbolication by handling MXDiagnosticPayload callbacks, retrieving the MXCallStackTree JSON, and exporting it to debug crashes and hangs across Apple platforms.

Can I add custom performance instrumentation to measure specific code paths?

You can add custom performance instrumentation by emitting mxSignpost metrics with MXMetricManager log handles to measure critical code paths and capture custom signpost data for performance monitoring.

Does MetricKit support immediate diagnostic reporting for production crashes?

Yes, MetricKit supports immediate diagnostic reporting by delivering MXDiagnosticPayloads for crashes, hangs, disk-write exceptions, CPU exceptions, and slow app launches where supported across iOS and related Apple platforms.

How do I start receiving daily metric payloads in my app?

Register an MXMetricManagerSubscriber as early as possible in App initialization, implement both didReceive callbacks, and persist the MXMetricPayload JSON before processing it for analytics and stability monitoring.