Core Span Attributes
Every span includes some core attributes.honeycomb.distro.runtime_version: Operating system version on the device.honeycomb.distro.version: Version of the Honeycomb SDK in use.os.description: String describing the OS version, build ID, and SDK level.os.name: OS name. AlwaysiOSfor iOS devices.os.type: OS type. Alwaysdarwinon Apple platforms.os.version: Current OS Version.service.name: Name of your application. Set viasetServiceName()or inferred from your bundle.service.version: Version of your application. Set viasetServiceVersion(). Defaults to being inferred from your bundle.telemetry.distro.name: Name of the Honeycomb SDK in use. Alwayshoneycomb-opentelemetry-swiftfor the Honeycomb OpenTelemetry Swift SDK.telemetry.distro.version: Version of the Honeycomb SDK in use.telemetry.sdk.language: Coding language for the Honeycomb SDK in use. Alwaysswiftfor the Honeycomb OpenTelemetry Swift SDK.telemetry.sdk.name: Name of the telemetry SDK used to generate telemetry data. Alwaysopentelemetryfor the Honeycomb OpenTelemetry Swift SDK.telemetry.sdk.version: Version of the OpenTelemetry SDK in use.
UIDevice Attributes
If your application uses UIKit, the SDK also includes device-level attributes from UIDevice. These give insight into the physical device running your application.device.id: Vendor-specific device identifier. (UIDevice.identifierForVendor)device.name: Name of the device. (UIDevice.name)device.systemName: Operating system (OS) name. (UIDevice.systemName)device.systemVersion: OS version string. (UIDevice.systemVersion)device.model: Device model name. (UIDevice.model)device.localizedModel: Localized version of the device model. (UIDevice.localizedModel)device.userInterfaceIdiom: Type of interface the device uses. (UIDevice.userInterfaceIdiom)device.isMultitaskingSupported: Indicates whether the device supports multitasking. (UIDevice.isMultitaskingSupported)device.orientation: Current device orientation. (UIDevice.orientationdevice.isLowPowerModeEnabled: Indicates whether Low Power Mode is currently active. (UIDevice.isLowPowerModeEnabled)device.isBatteryMonitoringEnabled: Indicates whether battery monitoring is turned on. (UIDevice.isBatteryMonitoringEnabled)device.batteryLevel: Battery level. Included only ifUIDevice.current.batteryStateAttributesEnabledis set totrue. (UIDevice.batteryLevel)device.batteryState: Battery state. Included only ifUIDevice.current.batteryStateAttributesEnabledis set totrue. (UIDevice.batteryState)
MetricKit Attributes
If MetricKit is available and you’ve enabled MetricKit instrumentation, the SDK adds system performance and behavior metrics. These help identify performance bottlenecks, power usage trends, and device conditions.Application Metadata
-
metrickit.metadata.app_build_version: (String) Application bundle version. (MXMetaData.applicationBuildVersion) -
metrickit.metadata.device_type: (String) Hardware identifier for the device. (MXMetaData.deviceType) -
metrickit.metadata.is_test_flight_app: (Bool) Indicates whether the application is registered with TestFlight. (MXMetaData.isTestFlightA) -
metrickit.metadata.low_power_mode_enabled: (Bool) Indicates whether low power mode is enabled. (MXMetaData.lowPowerModeEnabled) -
metrickit.metadata.os_version: (String) OS version, version number, and build number. (MXMetaData.osVersion) -
metrickit.metadata.platform_arch: (String) Name of the processor architecture. (MXMetaData.platformArchitecture) -
metrickit.metadata.region_format: (String) Short country code for the region format setting. (MXMetaData.regionFormat) -
metrickit.metadata.pid: (Int) Process ID of the running application. (MXMetaData.pid)
Application Version History
-
metrickit.includes_multiple_application_versions: (Bool) Indicates whether the application version changed during the reporting window. (MXMetricPayload.includesMultipleApplicationVersions) -
metrickit.latest_application_version: (String) Application version at the end of the reporting window. (MXMetricPayload.latestApplicationVersion)
CPU and GPU Usage
-
metrickit.cpu.cpu_time: (Double) Total amount of CPU time used by the application. (MXCPUMetric.cumulativeCPUTime) -
metrickit.cpu.instruction_count: Total number of CPU instructions executed during the reporting window. (MXCPUMetric.cumulativeCPUInstructions) -
metrickit.gpu.time: (Double) Total amount of GPU time used by the application. (MXGPUMetric.cumulativeGPUTime)
Cellular Connectivity
metrickit.cellular_condition.bars_average: (Double) Average cellular signal strength. (MXCellularConditionMetric.histogrammedCellularConditionTime)
Application Run Time
-
metrickit.app_time.foreground_time: (Double) Total time the application spent in the foreground. (MXAppRunTimeMetric.cumulativeForegroundTime) -
metrickit.app_time.background_time: (Double) Total time the application spent in the background. (MXAppRunTimeMetric.cumulativeBackgroundTime) -
metrickit.app_time.background_audio_time: (Double) Total time playing audio while in the background. (MXAppRunTimeMetric.cumulativeBackgroundAudioTime) -
metrickit.app_time.background_location_time: (Double) Total time using location services in the background. (MXAppRunTimeMetric.cumulativeBackgroundLocationTime)
Location Accuracy
-
metrickit.location_activity.best_accuracy_for_nav_time: (Double) Total time spent tracking the current location at the best accuracy for navigation. (MXLocationActivityMetric.cumulativeBestAccuracyForNavigationTime) -
metrickit.location_activity.best_accuracy_time: (Double) Total time spent tracking the current location at the best general accuracy. (MXLocationActivityMetric.cumulativeBestAccuracyTime) -
metrickit.location_activity.accuracy_10m_time: (Double) Total time spent tracking the current location to an accuracy of 10 meters. (MXLocationActivityMetric.cumulativeNearestTenMetersAccuracyTime) -
metrickit.location_activity.accuracy_100m_time: (Double) Total time spent tracking the current location to an accuracy of 100 meters. (MXLocationActivityMetric.cumulativeHundredMetersAccuracyTime) -
metrickit.location_activity.accuracy_1km_time: (Double) Total time spent tracking the current location to an accuracy of 1 kilometer. (MXLocationActivityMetric.cumulativeKilometerAccuracyTime) -
metrickit.location_activity.accuracy_3km_time: (Double) Total time spent tracking the current location to an accuracy of 3 kilometers. (MXLocationActivityMetric.cumulativeThreeKilometersAccuracyTime)
Network Transfer
-
metrickit.network_transfer.wifi_upload: (Double) Total amount of data uploaded over WiFi connection. (MXNetworkTransferMetric.cumulativeWifiUpload) -
metrickit.network_transfer.wifi_download: (Double) Total amount of data downloaded over WiFi connection. (MXNetworkTransferMetric..cumulativeWifiDownload) -
metrickit.network_transfer.cellular_upload: (Double) Total amount of data uploaded over cellular connection. (MXNetworkTransferMetric.cumulativeCellularUpload) -
metrickit.network_transfer.cellular_download: (Double) Total amount of data downloaded over cellular connection. (MXNetworkTransferMetric.cumulativeCellularDownload)
Application Launch
-
metrickit.app_launch.time_to_first_draw_average: (Double) Average time taken to launch the application. (MXAppLaunchMetric.histogrammedTimeToFirstDraw) -
metrickit.app_launch.app_resume_time_average: (Double) Average time taken to resume the application from the background. (MXAppLaunchMetric.histogrammedApplicationResumeTime) -
metrickit.app_launch.optimized_time_to_first_draw_average: (Double) Average time for prewarmed launches. (MXAppLaunchMetric.histogrammedOptimizedTimeToFirstDraw) -
metrickit.app_launch.extended_launch_average: (Double) Average time taken to launch, including extended launch tasks. (MXAppLaunchMetric.histogrammedExtendedLaunch)
Application Responsiveness
metrickit.app_responsiveness.hang_time_average: (Double) Average amount of time the application is too busy to handle user interaction responsively. (MXAppResponsivenessMetric.histogrammedApplicationHangTime)
Disk I/O
metrickit.diskio.logical_write_count: (Double) Total amount of data written to disk. (MXDiskIOMetric.cumulativeLogicalWrites)
Memory
-
metrickit.memory.peak_memory_usage: (Double) Largest amount of memory used by the application. (MXMemoryMetric.peakMemoryUsage) -
metrickit.memory.suspended_memory_average: (Double) Average amount of memory used by the application when it’s suspended. (MXMemoryMetric.averageSuspendedMemory)
Display
metrickit.display.pixel_luminance_average: (Double) Average amount of pixel luminosity on an OLED display. (MXDisplayMetric.averagePixelLuminance)
Animation
metrickit.animation.scroll_hitch_time_ratio: (Double) Ratio of time spent hitching while scrolling (UIScrollView). (MXAnimationMetric.scrollHitchTimeRatio)
Application Exit Metrics
-
metrickit.app_exit.foreground.normal_app_exit_count: (Int) Number of times the application exited normally from the foreground. (MXForegroundExitData.cumulativeNormalAppExitCount) -
metrickit.app_exit.foreground.memory_resource_limit_exit_count: (Int) Number of times the application was terminated from the foreground for using too much memory. (MXForegroundExitData.cumulativeMemoryResourceLimitExitCount) -
metrickit.app_exit.foreground.bad_access_exit_count: (Int) Number of times the application was terminated from the foreground for attempting an invalid memory access. (MXForegroundExitData.cumulativeBadAccessExitCount) -
metrickit.app_exit.foreground.abnormal_exit_count: (Int) Number of times the application exited abnormally from the foreground. (MXForegroundExitData.cumulativeAbnormalExitCount) -
metrickit.app_exit.foreground.illegal_instruction_exit_count: (Int) Number of times the application was terminated from the foreground for attempting to execute an illegal or undefined instruction. (MXForegroundExitData.cumulativeIllegalInstructionExitCount) -
metrickit.app_exit.foreground.app_watchdog_exit_count: (Int) Number of times the system watchdog terminated the application from the foreground. (MXForegroundExitData.cumulativeAppWatchdogExitCount) -
metrickit.app_exit.background.normal_app_exit_count: (Int) Number of times the application exited normally from the background. (MXBackgroundExitData.cumulativeNormalAppExitCount) -
metrickit.app_exit.background.memory_resource_limit_exit_count: (Int) Number of times the application was terminated from the background for using too much memory. (MXBackgroundExitData.cumulativeMemoryResourceLimitExitCount) -
metrickit.app_exit.background.cpu_resource_limit_exit_count: (Int) Number of times the application was terminated from the background for using too much CPU time. (MXBackgroundExitData.cumulativeCPUResourceLimitExitCount) -
metrickit.app_exit.background.memory_pressure_exit_count: (Int) Number of times the application was terminated from the background to free up memory. (MXBackgroundExitData.cumulativeMemoryPressureExitCount) -
metrickit.app_exit.background.bad_access_exit_count: (Int) Number of times the application was terminated from the background for attempting an invalid memory access. (MXBackgroundExitData.cumulativeBadAccessExitCount) -
metrickit.app_exit.background.abnormal_exit_count: (Int) Number of times the application exited abnormally from the background. (MXBackgroundExitData.cumulativeAbnormalExitCount) -
metrickit.app_exit.background.illegal_instruction_exit_count: (Int) Number of times the application was terminated from the background for attempting to execute an illegal or undefined instruction. (MXBackgroundExitData.cumulativeIllegalInstructionExitCount) -
metrickit.app_exit.background.app_watchdog_exit_count: (Int) Number of times the system watchdog terminated the application from the background. (MXBackgroundExitData.cumulativeAppWatchdogExitCount) -
metrickit.app_exit.background.suspended_with_locked_file_exit_count: (Int) Number of times the application was terminated from the background while being suspended and having file locks. (MXBackgroundExitData.cumulativeSuspendedWithLockedFileExitCount) -
metrickit.app_exit.background.background_task_assertion_timeout_exit_count: (Int) Number of times the application was terminated from the background for exceeding the allocated time for a background task. (MXBackgroundExitData.cumulativeBackgroundTaskAssertionTimeoutExitCount)
Diagnostics
-
metrickit.diagnostic.cpu_exception.total_cpu_time: (Double) Total CPU time used during the exception. (MXCPUExceptionDiagnostic.totalCPUTime) -
metrickit.diagnostic.cpu_exception.total_sampled_time: (Double) Total time the application was sampled during the exception. (MXCPUExceptionDiagnostic.totalSampledTime) -
metrickit.diagnostic.disk_write_exception.total_writes_caused: (Double) Total amount of data written to disk during the disk write exception. (MXDiskWriteExceptionDiagnostic.totalWritesCaused) -
metrickit.diagnostic.hang.hang_duration: (Double) Amount of time the app is busy and unable to respond to user interaction. (MXHangDiagnostic.hangDuration) -
metrickit.diagnostic.crash.exception.mach_exception_type: (Int) Mach exception type of the crash. (MXCrashDiagnostic.exceptionType) -
metrickit.diagnostic.crash.exception.code: (Int) Encoded processor-specific information for the crash. (MXCrashDiagnostic.exceptionCode) -
metrickit.diagnostic.crash.exception.signal: (Int) Signal associated with the crash. (MXCrashDiagnostic.exceptionSignal) -
metrickit.diagnostic.crash.exception.objc.message: (String) Exception message string that explains the reason for the Objective-C exception. (MXCrashDiagnosticObjectiveCExceptionReason) -
metrickit.diagnostic.crash.exception.objc.type: (String) Type of the Objective-C exception. (MXCrashDiagnosticObjectiveCExceptionReason) -
metrickit.diagnostic.crash.exception.termination_reason: (String) Reason the application was terminated as a human-readable string. (MXCrashDiagnostic.terminationReason) -
metrickit.diagnostic.crash.exception.objc.name: (String) Name of the Objective-C exception that triggered the crash. (MXCrashDiagnosticObjectiveCExceptionReason) -
metrickit.diagnostic.crash.exception.objc.classname: (String) Name of the Objective-C class in which the exception occurred. (MXCrashDiagnosticObjectiveCExceptionReason) -
metrickit.diagnostic.app_launch.launch_duration: (Double) Total duration of the application launch, measured from process start until the application is responsive. (MXAppLaunchDiagnostic.launchDuration)