Flashduty Docs
中文
EnglishRoadmapAPI官网控制台
中文
EnglishRoadmapAPI官网控制台
  1. iOS
  • 简介
  • On-call
    • 快速开始
      • 快速开始
      • 常见问题
      • 产品对比
    • 故障管理
      • 什么是故障
      • 检索与查看故障
      • 处理与更新故障
      • 升级与分派故障
      • 自定义字段
      • 自定义操作
      • 了解降噪过程
      • 了解历史故障
      • 了解新奇故障
      • 状态页
    • 配置On-call
      • 协作空间管理
      • 多种方式接入告警
      • 配置路由规则
      • 配置标签增强
      • 配置告警降噪
      • 配置分派策略
      • 故障静默与抑制
      • 配置值班规则
      • 配置通知模板
      • 配置服务日历
      • 配置个人信息
      • 配置过滤条件
      • 通知配置
      • 告警处理 pipeline
    • 高级功能
      • 引用变量
      • 动态分派
      • 分析数据
      • 作战室
    • 集成引导
      • 告警集成
        • 邮件 Email 集成指引
        • 夜莺 Flashcat 集成指引
        • Prometheus 集成指引
        • 标准告警事件集成指引
        • Grafana 集成指引
        • Zabbix 集成指引
        • Uptime Kuma 集成指引
        • 阿里云 ARMS 集成指引
        • 阿里云监控 CM 事件集成指引
        • 阿里云监控 CM 指标集成指引
        • 阿里云 SLS 集成指引
        • AWS CloudWatch 集成指引
        • Azure Monitor 集成指引
        • 百度云监控 BCM 集成指引
        • 华为云监控 CES 集成指引
        • 腾讯云 CLS 集成指引
        • 腾讯云监控 CM 集成指引
        • 腾讯云 Event Bridge 集成指引
        • Influxdata 集成指引
        • Open Falcon 集成指引
        • Pagerduty 集成指引
        • 蓝鲸智云集成指引
        • OceanBase 集成指引
        • Graylog 集成指引
        • Skywalking 集成指引
        • Sentry 集成指引
        • 监控宝告警集成指引
        • AWS EventBridge 集成指引
        • Dynatrace 集成指引
        • 华为云 LTS 集成指引
        • GoogleCloud 集成指引
        • Splunk 集成指引
        • AppDynamics 集成指引
        • SolarWinds 集成指引
        • 火山引擎CM 指标集成指引
        • 火山引擎CM 事件集成指引
        • 火山引擎日志服务 TLS 集成指引
        • Opmanager 告警事件
        • Meraki 告警事件
        • 天翼云告警集成
        • 观测云告警事件
        • zilliz 告警事件
        • 华为云 APM 告警事件
        • zstack 告警事件
        • Keep 告警集成指引
        • ElastAlert2 告警集成
        • Monit 告警集成指引
        • RUM 告警集成指引
      • 即时消息
        • 飞书 Lark 集成指引
        • 钉钉 Dingtalk 集成指引
        • 企业微信 Wecom 集成指引
        • Slack 集成指引
        • Microsoft Teams 集成指引
      • 单点登录
        • Authing 集成指引
        • Keycloak 集成指引
        • OpenLDAP 集成指引
      • Webhooks
        • 告警 webhook
        • 故障 webhook
        • 自定义操作
        • Jira 同步
        • ServiceNow 同步
        • ServiceDesk Plus 同步
      • 变更集成
        • 标准变更事件集成指引
      • 其他集成
        • Link 集成
    • 最佳实践
      • 基于标签增强实现动态分派
  • RUM
    • 快速开始
      • 入门介绍
      • 快速开始
      • 常见问题
      • 应用管理
    • SDK接入
      • Android
        • SDK接入
        • 高级配置
        • 数据收集
        • 兼容性
      • iOS
        • SDK接入
        • 高级配置
        • 数据收集
        • 兼容性
      • Web
        • SDK接入
        • 高级配置
        • 数据收集
        • 兼容性
    • 分析看板
      • Web
      • Native
    • 性能监控
      • 概览
      • 指标上报
      • 诊断优化
      • 性能分析
    • 查看器
      • 概览
      • 数据查询
    • 异常追踪
      • 概览
      • 异常上报
      • 异常聚合
      • Issue状态
      • 异常查看
      • 源码映射
      • Issue告警
    • 会话重放
      • 概览
      • SDK配置
      • 查看 RUM 会话重放记录
      • 隐私保护说明
    • 最佳实践
      • 分布式追踪
    • 其他
      • 术语说明
      • 数据收集
      • 数据安全
  • Moniors
    • 快速开始
      • 产品介绍
      • 快速开始
    • 告警规则配置
      • Prometheus
      • ElasticSearch
      • Loki
      • ClickHouse
      • MySQL
      • Oracle
      • PostgreSQL
      • Aliyun SLS
      • VictoriaLogs
    • 常见问题
      • 常见问题
  • 平台功能
    • 团队和成员
    • 了解权限设计
    • 配置单点登录
  • 服务协议
    • 服务条款
    • 用户协议/隐私政策
    • SLA承诺
    • 数据安全
中文
EnglishRoadmapAPI官网控制台
中文
EnglishRoadmapAPI官网控制台
  1. iOS

数据收集

概述#

FlashCat iOS RUM SDK 会生成包含相关指标和属性的事件。每个 RUM 事件都包含默认属性,例如事件对应的 UIViewController 类的 URL(view.url)和用户信息,如设备类型(device.type)和国家(geo.country)。
此外,不同事件类型还具有特定的附加指标和属性。例如,view.time_spent 指标与视图事件相关联,而 resource.method 属性与资源事件相关联。

应用启动#

在应用启动期间,iOS SDK 会记录应用启动时间并创建相应的视图。启动时间测量从进程启动到第一个 applicationDidBecomeActive 通知之间的时间间隔。
属性类型描述
view.is_start_view布尔值标识该视图是否为应用启动时创建的初始视图。
action.type字符串应用启动操作的类型,值为 application_start。
action.loading_time数字(纳秒)应用启动所需的时间。

视图监测与应用生命周期#

在 iOS 应用中,视图会在用户访问不同屏幕时自动创建。当用户打开屏幕时,视图开始记录;当视图不再可见(例如用户打开另一个屏幕)时停止。
当视图停止时,SDK 不会立即结束其生命周期,而是将其保持在 inactive 状态一段时间,以便附加后续事件。如果在此期间启动了新视图,之前的视图将完全结束。如果没有新视图启动,之前的视图将恢复为 active 状态。
当应用进入后台时,SDK 会保留最后一个活动视图并监控任何新的后台事件。后台时间不会计入活动视图的 time_spent 指标。但是,如果用户立即返回应用,SDK 会恢复原始的 time_spent 测量。

默认属性#

FlashCat iOS RUM SDK 会自动捕获以下默认属性,这些属性适用于所有 RUM 事件类型。

通用核心属性#

属性类型描述
date整数事件的时间戳(以毫秒为单位)。
type字符串事件的类型(如 session、view、resource、error、action)。
service字符串生成此事件的服务名称。
application.id字符串应用的唯一标识符。

设备#

以下设备相关属性会自动附加到 FlashCat 收集的所有事件上:
属性类型描述
device.type字符串设备类型(如 Mobile、Tablet、TV、Desktop、Other)。
device.brand字符串设备品牌,iOS 设备为 Apple。
device.model字符串设备型号(如 iPhone、iPad、iPod Touch、Apple TV)。
device.name字符串设备的名称。

操作系统#

以下操作系统相关属性会自动附加到 FlashCat 收集的所有事件上:
属性类型描述
os.name字符串操作系统名称(如 iOS、iPadOS、tvOS)。
os.version字符串操作系统版本号(如 15.4.1、16.0)。
os.version_major字符串操作系统主版本号(如 15、16)。

网络连接#

以下网络相关属性会自动附加到资源和错误事件上:
属性类型描述
connectivity.status字符串设备网络连接状态(如 connected、not_connected)。
connectivity.interfaces字符串数组可用的网络接口类型(如 wifi、cellular、ethernet)。
connectivity.cellular.technology字符串蜂窝网络技术类型(如 3G、4G、LTE、5G)。
connectivity.cellular.carrier_name字符串蜂窝网络运营商名称。

地理位置#

以下属性与 IP 地址的地理位置相关:
属性类型描述
geo.country字符串国家名称。
geo.country_iso_code字符串国家的 ISO 代码(如 US、CN)。
geo.country_subdivision字符串国家的一级行政区划(如美国的州、中国的省)。
geo.continent_code字符串洲的 ISO 代码(如 EU、AS)。
geo.continent字符串洲名称。
geo.city字符串城市名称。

全局用户属性#

您可以在所有 RUM 事件上启用用户追踪,以关联用户会话并简化问题排查。用户属性是可选的,但建议提供以下属性:
属性类型描述
usr.id字符串用户的唯一标识符。
usr.name字符串用户友好名称,默认显示在 RUM UI 中。
usr.email字符串用户电子邮件地址。如果没有用户名,则显示电子邮件。
要设置用户信息,请参阅 追踪用户信息。

事件特定属性#

不同的事件类型具有特定的属性和指标。

会话属性#

属性类型描述
session.id字符串会话的唯一标识符。
session.type字符串会话类型(如 user、synthetic)。
session.is_active布尔值会话是否处于活动状态。
session.initial_view.id字符串会话中初始视图的 ID。
session.initial_view.url字符串会话中初始视图的 URL。
session.initial_view.name字符串会话中初始视图的名称。
session.last_view.id字符串会话中最后一个视图的 ID。
session.last_view.url字符串会话中最后一个视图的 URL。
session.last_view.name字符串会话中最后一个视图的名称。
session.has_crash布尔值会话是否包含崩溃事件。
session.has_replay布尔值会话是否启用了会话重放。

视图属性#

属性类型描述
view.id字符串视图的唯一标识符。
view.url字符串视图的 URL,对应 UIViewController 类名。
view.name字符串视图的可自定义名称。
view.referrer字符串前一个视图的 URL。
view.action.count数字该视图中收集的用户操作数。
view.error.count数字该视图中收集的错误数。
view.resource.count数字该视图中收集的资源数。
view.time_spent数字(纳秒)用户在该视图上花费的时间。
view.network_settled_time数字(纳秒)视图启动时完全初始化所需的时间。
view.is_active布尔值视图是否处于活动状态。
view.is_slow_rendered布尔值视图渲染是否缓慢。
view.crash.count数字该视图中发生的崩溃数。
view.frozen_frame.count数字该视图中的冻结帧数。
view.refresh_rate_average数字视图的平均刷新率。
view.refresh_rate_min数字视图的最低刷新率。
view.memory_average数字视图的平均内存使用量。
view.memory_max数字视图的最大内存使用量。
view.cpu_ticks_count数字视图的 CPU 时钟周期数。
view.cpu_ticks_per_second数字视图每秒的 CPU 时钟周期数。

资源属性#

属性类型描述
resource.id字符串资源的唯一标识符。
resource.url字符串资源 URL。
resource.method字符串HTTP 方法(如 GET、POST、PATCH、DELETE)。
resource.type字符串资源类型(如 xhr、image、font、css、js)。
resource.status_code数字HTTP 响应状态码。
resource.size数字(字节)资源大小。
resource.duration数字(纳秒)加载资源所需的总时间。
resource.connect.duration数字(纳秒)建立服务器连接所需的时间(connectEnd - connectStart)。
resource.ssl.duration数字(纳秒)TLS 握手所需的时间。
resource.dns.duration数字(纳秒)DNS 解析所需的时间(domainLookupEnd - domainLookupStart)。
resource.first_byte.duration数字(纳秒)等待接收响应首字节的时间(responseStart - requestStart)。
resource.download.duration数字(纳秒)下载响应的时间(responseEnd - responseStart)。
resource.redirect.duration数字(纳秒)后续 HTTP 请求所需的时间(redirectEnd - redirectStart)。
resource.provider.name字符串资源提供者名称,默认为 unknown。
resource.provider.domain字符串资源提供者域名。
resource.provider.type字符串资源提供者类型(如 first-party、cdn、ad、analytics)。

错误属性#

前端错误通过 RUM 收集。错误消息和堆栈跟踪(如果可用)会包含在内。
属性类型描述
error.source字符串错误来源(如 webview、logger、network)。
error.type字符串错误类型(在某些情况下为错误代码)。
error.message字符串简洁、易读的单行错误消息。
error.stack字符串错误的堆栈跟踪或补充信息。
error.issue_id字符串错误问题的唯一标识符。
error.category字符串错误类型的高级分组。可能的值包括:ANR、App Hang、Exception、Watchdog Termination、Memory Warning、Network。
error.file字符串错误追踪发现问题的文件。
error.is_crash布尔值该错误是否导致应用崩溃。
freeze.duration数字(纳秒)主线程冻结的持续时间。仅适用于 App Hang。

网络错误#

网络错误包含有关失败 HTTP 请求的信息。以下是额外收集的属性:
属性类型描述
error.resource.status_code数字HTTP 响应状态码。
error.resource.method字符串HTTP 方法(如 GET、POST)。
error.resource.url字符串资源 URL。
error.resource.provider.name字符串资源提供者名称,默认为 unknown。
error.resource.provider.domain字符串资源提供者域名。
error.resource.provider.type字符串资源提供者类型(如 first-party、cdn、ad、analytics)。

操作属性#

属性类型描述
action.id字符串用户操作的唯一标识符。
action.type字符串用户操作类型(如 tap、application_start)。
action.name字符串用户操作的名称。
action.target.name字符串用户交互的元素。仅适用于自动收集的操作。
action.loading_time数字(纳秒)操作的加载时间。
action.resource.count数字该操作触发的资源数。
action.error.count数字该操作触发的错误数。
action.long_task.count数字该操作触发的长任务数。

崩溃属性#

当应用发生崩溃时,会收集以下额外属性:
属性类型描述
error.signal字符串导致崩溃的信号名称(如 SIGABRT、SIGSEGV)。
error.binary_images数组崩溃时加载的二进制映像列表。
error.threads数组崩溃时所有线程的状态。
error.meta对象崩溃相关的元数据。

数据存储#

在上传到 FlashCat 之前,数据以明文形式存储在应用沙盒的缓存目录(Library/Caches)中。设备上安装的其他应用无法读取此目录。
为确保 SDK 不会占用过多磁盘空间,过旧的数据会被自动丢弃。SDK 会遵循以下规则:
当网络可用且设备电量充足时,数据会以批次形式发送。
如果网络不可用或数据上传失败,批次会被保留直到成功发送。
超过一定时限的数据会被自动清理。
这意味着即使用户在离线时使用您的应用,也不会丢失数据。

更多信息#

iOS SDK 接入:了解如何在 iOS 应用中接入 FlashCat RUM SDK
iOS SDK 高级配置:了解如何配置 SDK 的高级功能
RUM 数据收集:了解 RUM 通用数据收集机制

添加官方技术支持微信

在这里,获得使用上的任何帮助,快速上手FlashDuty

微信扫码交流
修改于 2026-01-13 07:47:21
上一页
高级配置
下一页
兼容性
Built with