Monitoring Transaction Performance

Apple provides the MetricKit framework for developers to periodically get diagnostic data about how the app is performing and how it is using resources. One of those metrics is MXNetworkTransferMetric, but it only provides an overview of how many bytes the app has transferred. While Apple provides an API for custom metrics, the implementation limitations are enough such that creating custom metrics for transactions wouldn’t work. Rather, you’d need to create a custom collector of sorts leveraging the data from NSURLSessionTaskTransactionMetrics....