@guandata/guancli 1.0.37 → 1.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +12 -0
- package/binaries/guancli-darwin-arm64 +0 -0
- package/binaries/guancli-darwin-x64 +0 -0
- package/binaries/guancli-linux-arm64 +0 -0
- package/binaries/guancli-linux-x64 +0 -0
- package/binaries/guancli-win32-x64.exe +0 -0
- package/package.json +1 -1
- package/skills/guancli/SKILL.md +44 -513
- package/skills/guancli/references/auth-and-config.md +96 -0
- package/skills/guancli/references/form-chatbi.md +145 -0
- package/skills/guancli/references/metric-commands.md +1 -149
- package/skills/guancli/references/preview-and-output.md +164 -0
- package/skills/guancli/references/resource-query.md +70 -0
- package/skills/guancli/references/metric-atomic-mutation.md +0 -225
- package/skills/guancli/references/metric-common-fields.md +0 -168
- package/skills/guancli/references/metric-composite-mutation.md +0 -158
- package/skills/guancli/references/metric-delete-mutation.md +0 -70
- package/skills/guancli/references/metric-derived-mutation.md +0 -385
- package/skills/guancli/references/metric-expression-rules.md +0 -144
- package/skills/guancli/references/metric-mutation.md +0 -122
- package/skills/guancli/references/metric-public-dimension.md +0 -151
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
# 公共维度查询与写入
|
|
2
|
-
|
|
3
|
-
公共维度用于把多个数据集中的同一业务维度字段关联起来,让跨指标、跨数据集的适用维度能够按同一逻辑维度对齐。
|
|
4
|
-
|
|
5
|
-
## 命令入口
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
guancli metric public-dim list [keyword]
|
|
9
|
-
guancli metric public-dim get <public_dim_id>
|
|
10
|
-
guancli metric public-dim fd-map <ds_id>
|
|
11
|
-
guancli metric public-dim create --file /tmp/public_dim.json --dry-run
|
|
12
|
-
guancli metric public-dim edit <public_dim_id> --file /tmp/public_dim_patch.json
|
|
13
|
-
guancli metric public-dim owner <public_dim_id> --business-owner <user_id>
|
|
14
|
-
guancli metric public-dim delete <public_dim_id>
|
|
15
|
-
guancli metric public-dim delete <public_dim_id> --confirm
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
`public-dim` 也可写成 `public-dimension` 或 `pubdim`。
|
|
19
|
-
|
|
20
|
-
## 通用原则
|
|
21
|
-
|
|
22
|
-
- 默认使用当前已登录环境,不询问 profile;只有用户明确指定其它环境时才追加 `--profile <profile>`。
|
|
23
|
-
- 用户只给公共维度名称时,先用 `guancli metric public-dim list <keyword>` 搜索候选。
|
|
24
|
-
- 用户只给数据集/字段中文名时,先用 `guancli ds search`、`guancli ds get <dsId> --brief` 查询 `dsId` 和 `fdId`。
|
|
25
|
-
- 新建/编辑前先生成 JSON,并用 `--dry-run` 或人工摘要让用户确认。
|
|
26
|
-
- 公共维度删除是不可恢复操作,必须先做依赖检查,再让用户确认。
|
|
27
|
-
|
|
28
|
-
## 查询
|
|
29
|
-
|
|
30
|
-
列表:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
guancli metric public-dim list 日期 --limit 50 --offset 0 --order-by utimeDesc
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
详情:
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
guancli metric public-dim get <public_dim_id>
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
查询某个数据集字段是否已被公共维度占用:
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
guancli metric public-dim fd-map <ds_id>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
`fd-map` 返回 `fdId -> { id, name }`,用于新建/编辑公共维度时避免选择已被其它公共维度使用的字段。
|
|
49
|
-
|
|
50
|
-
## 新建/编辑入参
|
|
51
|
-
|
|
52
|
-
| 字段 | 中文 | 说明 |
|
|
53
|
-
| --- | --- | --- |
|
|
54
|
-
| `name` | 公共维度名称 | 必填;最长 50;仅支持中文、字母、数字、下划线 |
|
|
55
|
-
| `businessOwner` | 责任人 ID | 必填;公共维度业务侧解释对象 |
|
|
56
|
-
| `relatedFields` | 关联的数据集字段 | 必填,至少一个;元素为 `{ "dsId": "...", "fdId": "..." }` |
|
|
57
|
-
|
|
58
|
-
`relatedFields` 规则:
|
|
59
|
-
|
|
60
|
-
- 每个元素都必须同时有 `dsId` 和 `fdId`。
|
|
61
|
-
- 同一个公共维度里的字段类型必须兼容/相同;后端会校验,不同类型会失败。
|
|
62
|
-
- Web 会禁用已被其它公共维度使用的字段;CLI 创建前应对每个涉及的数据集调用 `fd-map`,发现字段已归属其它公共维度时先向用户说明并重新选择。
|
|
63
|
-
- 同一个公共维度内不要重复选择同一数据集的同一字段。
|
|
64
|
-
|
|
65
|
-
## JSON 模板
|
|
66
|
-
|
|
67
|
-
```json
|
|
68
|
-
{
|
|
69
|
-
"name": "日期",
|
|
70
|
-
"businessOwner": "<user_id>",
|
|
71
|
-
"relatedFields": [
|
|
72
|
-
{ "dsId": "<ds_id_1>", "fdId": "<date_fd_id_1>" },
|
|
73
|
-
{ "dsId": "<ds_id_2>", "fdId": "<date_fd_id_2>" }
|
|
74
|
-
]
|
|
75
|
-
}
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
## 新建流程
|
|
79
|
-
|
|
80
|
-
1. 收集公共维度名称、责任人、要关联的数据集字段。
|
|
81
|
-
2. 对每个数据集运行 `guancli ds get <dsId> --brief` 核对字段存在和字段类型。
|
|
82
|
-
3. 对每个数据集运行 `guancli metric public-dim fd-map <dsId>`,确认字段未被其它公共维度使用。
|
|
83
|
-
4. 生成 JSON 文件并 dry-run:
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
guancli metric public-dim create --file /tmp/public_dim.json --dry-run
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
5. 向用户摘要名称、责任人、关联字段、字段类型;用户确认后提交:
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
guancli metric public-dim create --file /tmp/public_dim.json
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
## 编辑流程
|
|
96
|
-
|
|
97
|
-
1. 先获取详情:
|
|
98
|
-
|
|
99
|
-
```bash
|
|
100
|
-
guancli metric public-dim get <public_dim_id>
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
2. 基于现有详情生成 patch 或完整 JSON。默认 `edit` 会把详情转换成提交 payload 后合并 patch。
|
|
104
|
-
3. 如果修改关联字段,重新检查字段类型和 `fd-map` 占用。
|
|
105
|
-
4. dry-run:
|
|
106
|
-
|
|
107
|
-
```bash
|
|
108
|
-
guancli metric public-dim edit <public_dim_id> --file /tmp/public_dim_patch.json --dry-run
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
5. 用户确认后提交:
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
guancli metric public-dim edit <public_dim_id> --file /tmp/public_dim_patch.json
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
只转移责任人时可用:
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
guancli metric public-dim owner <public_dim_id> --business-owner <user_id>
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
## 删除流程
|
|
124
|
-
|
|
125
|
-
删除前先执行依赖检查:
|
|
126
|
-
|
|
127
|
-
```bash
|
|
128
|
-
guancli metric public-dim delete <public_dim_id>
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
该命令会调用:
|
|
132
|
-
|
|
133
|
-
```text
|
|
134
|
-
GET /api/metric-platform/public-dimensions/depend-check/<public_dim_id>
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
如果返回 `isDepended=true`,说明已有指标在使用该公共维度。Web 的行为是提示“删除后将影响有公共维度的指标计算准确性”,用户确认后仍允许删除。
|
|
138
|
-
|
|
139
|
-
用户明确确认后执行:
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
guancli metric public-dim delete <public_dim_id> --confirm
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
提交删除接口:
|
|
146
|
-
|
|
147
|
-
```text
|
|
148
|
-
POST /api/metric-platform/public-dimensions/delete/<public_dim_id>
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
不要把“依赖检查通过/已提示风险”描述成已经删除成功;只有 delete 接口成功返回后才算删除完成。
|