简介
本技能是事件、属性、表、字段、枚举值的命名解析、schema 校验与元数据管理入口。一方面将口语化业务描述解析为下游技能可直接引用的精确标识,另一方面支持创建和更新事件与属性的元数据。不执行数值聚合、看板查询、人群规模计算或 SQL 查询。
所有业务查询类技能在执行前,都依赖本技能完成命名发现与消歧:sensors-insight 需要精确的事件名与属性名构造查询对象,sensors-sql-query 需要精确的表名与列名生成 SQL,sensors-cohort 与 sensors-tag 在创建规则时需要确认规则引用的事件与属性真实存在。
使用场景
本技能适用于以下任务:
- 将口语描述(如"下单""来源渠道""会员等级")解析为精确的事件名、事件属性名或用户属性名;
- 解析 SQL 所需的表名、列名与字段类型;
- 获取属性枚举值,或确认中文业务值对应的真实存储值;
- 验证事件是否已注册、是否曾经有数据上报、属性是否存在;
- 新埋点上线验收与批量 schema 校验;
- 创建事件 schema,或在已有 schema 下创建普通属性;
- 更新事件或属性的显示名、可见性、启用状态。
执行流程遵循以下路径:接收解析或管理请求 → 在元数据中检索候选 → 单一明确匹配则记录继续,多候选项列出交由用户确认,零结果明确告知"未找到" → 记录精确标识与数据类型 → 交接给下游技能复用。多候选项禁止自行选择,零结果禁止回退至其他通道(如直调 API、自写 SQL、换项目重试)。
使用案例
| 用户输入 | 系统执行 |
|---|---|
| "用户下单的事件叫什么?" | 检索事件元数据 → 返回精确事件名(如 payOrder);多候选项列出供用户确认。 |
| "支付方式有哪些枚举值?" | 解析属性 → 返回枚举值列表与对应的真实存储值(如"微信支付"→ wechat)。 |
| "$MPShow 这个事件有没有上报过数据?" | 验证事件存在性与数据上报状态 → 返回 has_data 原始值(true/false)。 |
| "注册一个新事件叫『分享成功』" | 进入创建流程 → 确认事件 schema 参数 → 服务端预演校验 → 用户确认后创建。 |
| "把『订单金额』属性的显示名改成『实付金额』" | 进入更新流程 → 确认属性存在 → 更新显示名 → 返回更新结果。 |
| "帮我查 SQL 用的 events 表有哪些列" | 解析表结构 → 返回列名与字段类型列表,供 sensors-sql-query 构造 SQL。 |
常见问题
Q:多候选项能自行选择最像的那个吗?
不能。多候选项必须列出全部候选交由用户确认,禁止自行推断或二选一。零结果时明确告知"未找到",不回退到其他通道。
Q:能顺便查一下数据的数值结果吗(比如某个事件的总次数)?
不能。本技能只处理元数据——事件名、属性名、枚举值、存在性、数据类型等。数值聚合、漏斗、留存等分析交给 sensors-insight,SQL 查询交给 sensors-sql-query。
Q:验证事件是否有数据上报时,能直接看列表里有没有值吗?
不能。验证 has_data 时必须使用保留空结果的命令参数,不能用默认列表结果代替,否则可能因列表过滤而误判。
Q:能创建事件或属性吗?
可以。支持创建事件 schema,以及在已有 schema 下创建普通属性。也支持更新事件或属性的显示名、可见性和启用状态。
Q:查不到元数据时能换项目重试吗?
不能。空结果时返回当前上下文的查找结论,不切换项目重试,不回退至直调 API 或自写 SQL。
Q:本技能的产出怎么给下游用?
解析完成后记录事件名、属性名、数据类型、枚举值、表名、列名等结构化字段,下游技能(sensors-insight、sensors-sql-query、sensors-cohort、sensors-tag)直接引用这些精确标识构造查询或规则,无需重复解析。