扩展表是你在 MoleSignal 里维护、并在流水线变换中用来联表的小型「键 → 记录」
查找表。用它给事件富化参考数据——把 service 映射到所属团队、把账号 ID 映射到套餐档位、把 IP 段映射
到地区——而无需在热路径上调用外部存储。
创建表并添加行
在 Functions → Extend tables 下创建表。每一行是一个键加一条带命名字段的记录。也可以通过 API
管理:
# upsert 一行,键为 "checkout"
curl -X PUT http://localhost:5080/api/v1/extend_tables/service_meta/rows/checkout \
-H "authorization: Bearer $MS_JWT" \
-H 'content-type: application/json' \
-d '{"team":"payments","tier":"gold"}'
| 操作 | 端点 |
|---|
| 列出所有表 | GET /api/v1/extend_tables |
| 列出某表的行 | GET /api/v1/extend_tables/{table} |
| upsert 一行 | PUT /api/v1/extend_tables/{table}/rows/{key} |
| 删除一行 | DELETE /api/v1/extend_tables/{table}/rows/{key} |
在变换里查表
在 VRL 变换里调用 lookup(table, key),并从返回的记录上读取
字段:
# 给每条事件富化该服务所属的团队
.team = lookup("service_meta", .service).team
查表在内存中进行,因此不给流水线运行增加任何查询或存储开销。表在启动时加载,并随你 upsert、删除
行而保持最新。
扩展表按组织隔离、并在所有流水线间共享——映射定义一次,处处复用。