DataFinder为您提供数据输出功能,以实现将通过SDK采集到的埋点数据实时推送到目标地址(例如您的业务数仓),满足您将埋点数据同步至数仓灵活分析的需求(时效性要求较高的场景不适用)。本文为您概要介绍数据输出模块的功能能力和各产品环境中的操作流程。
注意
当前DataFinder的数据输出功能主要适用于将数据同步至您的数仓中进行二次分析的场景,对于实时性要求较高的场景不建议基于DataFinder的实时数据输出功能构建数据处理流程,即,DataFinder的数据输出功能当前不保障数据推送的时效性,可能会存在时延和时延导致的数据重复等问题。
细分项目 | 限制说明:SaaS-云原生 | 限制说明:SaaS-非云原生 |
|---|---|---|
功能开关 | 为了保证您和用户的数据安全,数据输出功能默认关闭。在开始使用之前,您需要联系管理员开通数据输出模块权限。 | |
数据传输方式 | SaaS-云原生:仅支持实时传输埋点数据至目标数据源,数据源类型支持火山引擎Kafka、BMQ。 | SaaS-非云原生:仅支持实时传输埋点数据至目标数据源,且数据源类型仅支持webhook。 说明 DataFinder也支持使用OpenAPI进行离线数据导出(具体请参考原始数据导出 API(SaaS)),如果您希望使用OpenAPI进行数据导出,您需要联系客服开通(请完整说明数据输出的用途和用量,并提供集团ID以便于审核)。 |
地域限制 | SaaS-云原生:无地域限制,当前华北2(北京)、华南1(广州)、柔佛地域均支持。但需要注意,如果接收端开启了白名单,您需要将DataFinder的IP地址添加至白名单列表中。 | SaaS-非云原生:无地域限制,但需要注意,如果接收端开启了白名单,您需要将DataFinder的IP地址添加至白名单列表中。 |
功能费用 | 数据输出使用额度需单独购买,最终价格以购买下单时页面展示为准。 | 建议使用云原生环境。 |
账号权限要求 | 您的操作账号需要具备数据管理的数据输出功能权限,授权操作看参见角色管理。 | |
topic内为单条数据json,数据格式示例如下:
{ "user": { "user_unique_id": "9482854997", "device_id": 7582024008078508042, "open_udid": "ef9c4eb3f2a29926", "ssid": "1736106870031597563", "oaid": "6516326280" }, "header": { "app_id": 20003079, "app_name": "rangers_2100208426_test_export", "app_version": "0.3.7", "app_package": "android.app", "app_channel": "自然激活", "access": "3G", "client_ip": "180.164.79.156", "carrier": "T-mobile", "os_name": "android", "os_version": "2.3.4", "custom": "{\"platform_type\":\"ios\",\"age\":88,\"getui_client_id\":\"377488140166484\"}", "app_language": "zh_CN", "language": "en", "app_region": "China", "region": "China", "device_model": "Nexus S", "device_brand": "google", "resolution": "320*568", "timezone": 8, "tz_name": "Asia/Shanghai", "tz_offset": -28800, "platform": "android", "user_agent": "Dalvik/2.1.0 (Linux; U; Android 2.3.4; zh-CN; Nexus S Build/NRD90M)", "browser": "firefox", "browser_version": "66.0.5", }, "params": "{\"duration\":0,\"is_background\":false,\"session_id\":\"7391c12f5f93254a0e5b3415f7dff1ea2bd7\",\"session_duration\":0}", "event_name": "app_launch", "session_id": "7391c12f5f93254a0e5b3415f7dff1ea2bd7", "server_time": 1724652079, "log_type": "launch", "local_time_ms": 1724651633000, "staging_flag": false, }
以下为您介绍通过Webhook渠道离线/实时传输数据时,传输的数据的格式,以及各个传输的字段的说明。
一次请求的body是一个json array,里面会包含1-50条事件。
[{ "user": { "user_unique_id": "mock_user_unique_id", "web_id": 6934486383370142000, "ssid": "acf3dd8f-7a18-42b1-996b-56a20156249c" }, "header": { "app_id": 10000010, "app_name": "mock_web", "access": "", "client_ip": "221.122.122.122", "carrier": "", "os_name": "mac", "os_version": "10_15_5", "custom": "{\"app_id\":10000010,\"screen_width\":1440,\"screen_height\":900}", "language": "zh-CN", "device_model": "Macintosh", "resolution": "1440x900", "width": 1440, "height": 900, "timezone": 8, "tz_offset": -28800, "platform": "web", "browser": "Chrome", "browser_version": "78.0.3904.108", "referrer": "", "referrer_host": "" }, "params": "{\"app_name\":\"mock_web\",\"referrer\":\"\",\"user_unique_id\":\"\",\"time\":1601590110322,\"is_bav\":1,\"title\":\"测试页面\",\"event_index\":1616590857270,\"url\":\"http://demo.com.cn/product/list\",\"url_path\":\"/product/list\"}", "event_name": "predefine_pageview", "session_id": "aa7b79a1-4e27-44fe-bed8-56adfffddc07", "datetime": 1601590110, "server_time": 1601590110, "log_type": "mario_event", "local_time_ms": 1601590110322 },{其他事件},{其他事件}]
//一个事件 Event { User user //user内格式见下面 Header header //header格式见下面 string params // 事件参数,单层json map,需要dump成字符串 string event_name // 事件名 string session_id uint64 server_time // 日志到达服务器时间 string log_type uint64 local_time_ms // 事件发生时间戳(毫秒) } //事件内user字段 User { string user_unique_id // 用户唯一id uint64 device_id // 设备id string open_udid // openudid string client_udid // 客户端自己生成的设备id string mc // 设备mac地址 string build_serial // 硬件序列号 string serial_number // 序列号 string idfa // idfa uint64 web_id string ssid string idfv string oaid string user_unique_id_type // user_unique_id字段口径,tob场景使用,为空或default_user_unique_id_type为默认口径 } //事件内header字段 Header { uint32 app_id // app_id string app_name // app名称 string app_version // app版本 string app_package // app包名称 string display_name // app名称 string app_channel // app分发渠道 string access // 网络访问类型 string client_ip // 客户端ip string carrier // 运营商 string os_name // 系统名称 string os_version // 系统版本 string custom //自定义事件公共属性,是一个json的字符串 uint32 client_port // 客户端端口号 string app_key // 应用key uint32 version_code // 版本号 string vendor_id // app发行商id string app_language // app语言 string language // 系统语言 string app_region // app设置地区 string region // 系统设置地区 string device_model // 设备型号 string device_brand // 设备品牌 string device_manufacturer // 设备制造商 string resolution // 屏幕分辨率 string display_density // 屏幕像素显示级别 uint32 density_dpi // 屏幕像素显示密度 sint32 width // 屏幕宽度 sint32 height // 屏幕宽度 string cpu_abi // cpu类型 float timezone // 时区 string tz_name // 时区名称 sint32 tz_offset // 时区偏差 string mcc_mnc // 国家+运行商标记 uint32 os_api // 客户端系统API版本号 string rom // rom string rom_version // rom版本 string sim_region // sim地区 string sim_serial_number // sim序列号 bool is_jailbroken // 设备是否越狱 string platform // 平台类型 string ab_sdk_version // ab_test字段 string utm_source // 广告来源 string user_agent // user_agent string utm_medium // 广告媒介 string utm_campaign // 广告名称 string browser string browser_version string referrer string referrer_host string app_version_minor //4位版本号 string utm_term //广告关键词 string utm_content //广告内容 string sdk_version_v2 //string类型sdk版本 string tracer_data // SDK tracer自定义字段,json串 uint64 harmony_os_api // 524~530为鸿蒙系统特有标识 string harmony_os_version string harmony_release_type uint64 harmony_build_version uint64 harmony_major_version uint64 harmony_senior_version uint64 harmony_feature_version }