埋点管理
埋点管理为数据接入测试和日常使用过程中提供可视化的数据管理功能,包括埋点信息、实时数据和Debug数据3个子模块,各子模块功能说明如下:
埋点信息:查看最近7日项目内数据接收情况,对埋点事件进行禁用/启用管理。
实时数据:包括实时入库和错误数据。实时入库页面可查看实时入库数据;错误数据页面每10分钟统计并展示错误上报数据。
Debug数据:开发者调试代码和数据的可视化展示界面,提供数据的实时反馈,并针对存在错误的数据给出具体的错误原因。
一、埋点管理功能入口和适用角色
鼠标移入导航栏「数据管理」,点击埋点管理,即可进入埋点管理功能模块。
默认公司超管和管理员角色可进入埋点管理模块进行查看和编辑操作。
权限 | 公司超管 | 管理员 | 分析师 | 普通成员 |
---|---|---|---|---|
查看埋点信息、实时数据和debug数据模块 | √ | √ | ||
编辑埋点信息、实时数据和debug数据模块 | √ | √ |
二、埋点信息
2.1 埋点信息页面概览
埋点信息主页
事件错误详情页
2.2 埋点信息页
埋点信息页支持查看「最近7日」项目内数据接收情况,对埋点事件进行禁用/启用管理。
埋点管理页面由设置区域和数据详情区域组成。
2.2.1 查询设置
1、查询时间设置:查询时间指数据的入库时间。支持自定义查看最近7日任一时间段的数据接收情况。默认统计「今日」的数据,当结束时间为「今日」时,可点击右侧刷新按钮更新结束时间为最新时间(每10分钟更新一次数据统计)。
2、区间数据:区间数据展示所设置时间段内的已接收、已入库、错误入库和入库失败数。
已接收数据指receiver接收的数据;
已入库包括正确入库数据和错误入库数据;
错误入库指包含如事件属性名不合法、属性类型不合法等属性级别错误的数据。该类数据可正常入库,数据内的错误属性将置空处理;
入库失败指因#event_name缺失,#event_time超出限定范围等上报数据不合法导致无法入库的数据。
3、数据的排序与搜索:可调整数据的排序方式和对指定事件进行搜索查看。
2.2.2 数据详情与管理
数据详情区域展示各事件(用户属性)下的已接收、已入库、错误入库和入库失败数据。
注意:埋点信息模块按照事件展示数据接收情况,因此若存在「#event_name不合法」、「#event_name缺失」的错误数据,不会在该模块展示。您可在「实时数据」-「错误数据」模块查看该类错误数据。
点击事件可展开查看事件下的数据明细,并支持对事件进行禁用/启用设置或查看事件的错误详情等操作。
1、事件的禁用和启用
禁用事件:点击「禁用」可设置事件为禁用状态,禁用后的事件将不再接收入库。禁用状态在设置10分钟后生效。
启用事件:禁用后的事件可重新启用。服务端上报数据将在启用设置10分钟后生效,通过客户端上报的数据需在用户下次打开应用时开始启用生效。
2、错误详情:点击错误详情可进入该事件的错误详情页。错误详情页内容介绍见下方。
2.3 错误详情页
错误详情页展示相应事件的错误详情信息。
错误信息按照「错误类型」展开,「错误条数」指含有该错误类型的数据条数。为方便问题定位,每类错误下将给出具体的「错误原因」和抽样示例,其中针对属性级的错误类型,提供具体的错误属性名称等信息。
示例说明:
- 在所选时间段事件ta_test存在2条错误入库数据,涉及两种错误类型——“事件属性名不合法”和“事件属性类型不合法”;
- 错误入库的2条数据中,2条均存在“事件属性名不合法”错误、1条存在“事件属性类型不合法”错误;
- 错误类型“事件属性类型不合法”下,存在两个属性的属性类型错误,分别为:“属性[#zone_offset]类型不合法,合法类型:[number]”、“属性[count]类型不合法,合法类型:[number]”。
在错误信息栏,鼠标移入错误类型右侧的信息提示图标,均可查看该错误类型对应的合法规则说明,以便您做进一步的调整。
此外,为方便数据查看,每条上报数据均可选择格式化查看与一键复制。
三、实时数据
实时数据模块提供查看实时数据上报情况,包括实时入库和错误数据两个子模块。
3.1 实时入库
实时入库展示最近24小时正确上报数据,当数据导入量较大时,仅展示最近1000条数据内容。每行json数据都可进行格式化查看、复制操作。
支持对每条数据进行格式化查看、复制操作:
3.2 错误数据
错误数据模块每10分钟统计并展示错误上报数据的错误类型、每类错误涉及的数据条数,并针对属性级的错误提供具体的错误原因/错误示例信息。错误数据的展示上限为最近100条错误统计。
四、Debug数据
Debug模式旨在方便开发人员调试代码,只用于集成阶段的数据验证。请注意Debug 模式可能会影响数据采集质量和 App 的稳定性,请不要在线上环境使用。
4.1 开启Debug模式
4.1.1 Android SDK
Android SDK 实例支持三种运行模式,在 TDConfig 中定义,请选用DEBUG
或DEBUG_ONLY
模式:
/**
* 实例运行模式, 默认为 NORMAL 模式.
*/
public enum ModeEnum {
/* 正常模式,数据会存入缓存,并依据一定的缓存策略上报 */
NORMAL,
/* Debug 模式,数据逐条上报。当出现问题时会以日志和异常的方式提示用户 */
DEBUG,
/* Debug Only 模式,只对数据做校验,不会入库 */
DEBUG_ONLY
}
比如以下代码是使用 Debug 模式完成 SDK 初始化:
// 获取 TDConfig 实例
TDConfig config = TDConfig.getInstance(mContext, TA_APP_ID, TA_SERVER_URL);
// 设置运行模式为 Debug 模式
config.setMode(TDConfig.ModeEnum.DEBUG);
// 初始化 SDK
instance = ThinkingAnalyticsSDK.sharedInstance(config);
4.1.2 iOS SDK
iOS SDK 实例支持三种运行模式,在 TDConfig
中定义,请选用DEBUG
或DEBUG_ONLY
模式:
/**
Debug模式
- ThinkingAnalyticsDebugOff : 默认 不开启Debug模式
*/
typedef NS_OPTIONS(NSInteger, ThinkingAnalyticsDebugMode) {
/**
默认 不开启Debug模式
*/
ThinkingAnalyticsDebugOff = 0,
/**
开启Debug_only模式,只对数据做校验,不会入库
*/
ThinkingAnalyticsDebugOnly = 1 << 0,
/**
Debug 模式,数据逐条上报。当出现问题时会以日志和异常的方式提示用户
*/
ThinkingAnalyticsDebug = 1 << 1
};
比如以下代码是使用 Debug 模式完成 SDK 初始化:
// 获取 TDConfig 实例
TDConfig *config = [[TDConfig alloc] init];
// 设置运行模式为 Debug 模式
config.debugMode = ThinkingAnalyticsDebug;
// 初始化 SDK
ThinkingAnalyticsSDK *instance = [ThinkingAnalyticsSDK startWithAppId:@"YOUR_APPID" withUrl:@"YOUR_SERVER_URL" withConfig:config];
4.1.3 其他客户端SDK
其他客户端SDK Debug模式开启说明详见各SDK使用指南:
4.2 添加Debug设备
为了避免 Debug 模式在生产环境上线,需指定设备才能开启 Debug 模式。只有在客户端开启了 Debug 模式,并在埋点管理- Debug 数据 中进行接入配置的设备才能开启 Debug 模式。
设备 ID 可以通过以下两种方式获取:
- 客户端日志:SDK 初始化完成后会打印设备
DeviceId
- 通过调用
getDeviceId
来获取设备ID
4.3 使用说明
连接设备后,通过设备上报的数据将实时展示在数据列表中,针对校验出现错误的数据将给出具体的错误原因以便排查。
- 切换设备:点击可切换当前接入设备或添加新设备;
- 暂停加载:测试过程中若希望定位在当前某事件做进一步处理,可点击「暂停加载」,暂停状态下产生的数据(如设置的自动采集事件)将在数据表上方提示。点击「开始加载」可切换至实时加载状态。
- 清空列表:点击可清空当前数据列表,被清空的数据将不再展示。清空操作只清空日志,不删除已入库事件。
- 搜索事件:搜索筛选仅展示指定事件或用户属性。