@social-data/social-neuron-subscription 1.0.12 → 1.0.13
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/bin/cli.js +7 -2
- package/manifest.json +1134 -37
- package/package.json +1 -1
- package/skills/social-neuron-subscription/SKILL.md +253 -44
package/manifest.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"revision":
|
|
2
|
+
"revision": 10,
|
|
3
3
|
"capability": "subscription",
|
|
4
4
|
"command": "social-neuron-subscription",
|
|
5
5
|
"default_action": null,
|
|
@@ -212,23 +212,28 @@
|
|
|
212
212
|
"type": "string"
|
|
213
213
|
},
|
|
214
214
|
"host": {
|
|
215
|
-
"description": "SFTP
|
|
215
|
+
"description": "SFTP 主机,不能为空白",
|
|
216
|
+
"minLength": 1,
|
|
216
217
|
"title": "Host",
|
|
217
218
|
"type": "string"
|
|
218
219
|
},
|
|
219
220
|
"port": {
|
|
220
221
|
"default": 22,
|
|
221
|
-
"description": "
|
|
222
|
+
"description": "端口,1–65535,默认 22",
|
|
223
|
+
"maximum": 65535,
|
|
224
|
+
"minimum": 1,
|
|
222
225
|
"title": "Port",
|
|
223
226
|
"type": "integer"
|
|
224
227
|
},
|
|
225
228
|
"username": {
|
|
226
|
-
"description": "
|
|
229
|
+
"description": "登录用户名,不能为空白",
|
|
230
|
+
"minLength": 1,
|
|
227
231
|
"title": "Username",
|
|
228
232
|
"type": "string"
|
|
229
233
|
},
|
|
230
234
|
"password": {
|
|
231
|
-
"description": "
|
|
235
|
+
"description": "登录密码,不能为空白,保留首尾空格",
|
|
236
|
+
"minLength": 1,
|
|
232
237
|
"title": "Password",
|
|
233
238
|
"type": "string"
|
|
234
239
|
},
|
|
@@ -301,6 +306,12 @@
|
|
|
301
306
|
},
|
|
302
307
|
"additionalProperties": false,
|
|
303
308
|
"properties": {
|
|
309
|
+
"confirmed": {
|
|
310
|
+
"default": false,
|
|
311
|
+
"description": "是否已确认继续并同意系统超限处理规则;超量时默认拒绝,true 允许保存但仍按上限截断;不跳过其他校验,不保存到 job,TopN 不适用",
|
|
312
|
+
"title": "Confirmed",
|
|
313
|
+
"type": "boolean"
|
|
314
|
+
},
|
|
304
315
|
"name": {
|
|
305
316
|
"description": "job 名称,同一凭证(token)下唯一",
|
|
306
317
|
"maxLength": 128,
|
|
@@ -370,7 +381,7 @@
|
|
|
370
381
|
"type": "string"
|
|
371
382
|
},
|
|
372
383
|
"fields": {
|
|
373
|
-
"description": "
|
|
384
|
+
"description": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段;不填拉全量",
|
|
374
385
|
"items": {
|
|
375
386
|
"minLength": 1,
|
|
376
387
|
"type": "string"
|
|
@@ -381,7 +392,7 @@
|
|
|
381
392
|
"size": {
|
|
382
393
|
"anyOf": [
|
|
383
394
|
{
|
|
384
|
-
"maximum":
|
|
395
|
+
"maximum": 2147483647,
|
|
385
396
|
"minimum": 1,
|
|
386
397
|
"type": "integer"
|
|
387
398
|
},
|
|
@@ -390,7 +401,7 @@
|
|
|
390
401
|
}
|
|
391
402
|
],
|
|
392
403
|
"default": null,
|
|
393
|
-
"description": "
|
|
404
|
+
"description": "每次执行最多导出的记录行数。省略则按模式取默认:普通批量默认最多 500000 条,实际以服务端当前约束为准;传了 top(只取前 N 条)则默认 1,000、上限 10,000",
|
|
394
405
|
"title": "Size"
|
|
395
406
|
},
|
|
396
407
|
"target": {
|
|
@@ -452,9 +463,115 @@
|
|
|
452
463
|
"type": "object"
|
|
453
464
|
},
|
|
454
465
|
"output_schema": {
|
|
466
|
+
"$defs": {
|
|
467
|
+
"PrecheckResult": {
|
|
468
|
+
"additionalProperties": false,
|
|
469
|
+
"properties": {
|
|
470
|
+
"checked_at": {
|
|
471
|
+
"description": "检查时间,东八区 ISO 时间",
|
|
472
|
+
"title": "Checked At",
|
|
473
|
+
"type": "string"
|
|
474
|
+
},
|
|
475
|
+
"windows": {
|
|
476
|
+
"additionalProperties": {
|
|
477
|
+
"anyOf": [
|
|
478
|
+
{
|
|
479
|
+
"type": "string"
|
|
480
|
+
},
|
|
481
|
+
{
|
|
482
|
+
"type": "null"
|
|
483
|
+
}
|
|
484
|
+
]
|
|
485
|
+
},
|
|
486
|
+
"description": "发布时间、入库时间、更新时间三个维度的绝对闭区间;空表示不过滤",
|
|
487
|
+
"title": "Windows",
|
|
488
|
+
"type": "object"
|
|
489
|
+
},
|
|
490
|
+
"matched_rows": {
|
|
491
|
+
"description": "命中行数;count_relation=gte 时为下界,非精确总量",
|
|
492
|
+
"title": "Matched Rows",
|
|
493
|
+
"type": "integer"
|
|
494
|
+
},
|
|
495
|
+
"count_relation": {
|
|
496
|
+
"description": "eq=精确计数;gte=至少命中该数量",
|
|
497
|
+
"enum": [
|
|
498
|
+
"eq",
|
|
499
|
+
"gte"
|
|
500
|
+
],
|
|
501
|
+
"title": "Count Relation",
|
|
502
|
+
"type": "string"
|
|
503
|
+
},
|
|
504
|
+
"system_limit": {
|
|
505
|
+
"anyOf": [
|
|
506
|
+
{
|
|
507
|
+
"type": "integer"
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
"type": "null"
|
|
511
|
+
}
|
|
512
|
+
],
|
|
513
|
+
"description": "普通批量的系统导出上限;TopN 未执行预检时为空",
|
|
514
|
+
"title": "System Limit"
|
|
515
|
+
},
|
|
516
|
+
"effective_limit": {
|
|
517
|
+
"description": "本次生效的单次最大导出行数",
|
|
518
|
+
"title": "Effective Limit",
|
|
519
|
+
"type": "integer"
|
|
520
|
+
},
|
|
521
|
+
"would_truncate": {
|
|
522
|
+
"description": "当前统计是否超出有效导出数量;TopN 不新增预检",
|
|
523
|
+
"title": "Would Truncate",
|
|
524
|
+
"type": "boolean"
|
|
525
|
+
},
|
|
526
|
+
"checked": {
|
|
527
|
+
"default": true,
|
|
528
|
+
"description": "是否执行数据量统计;TopN 为 false",
|
|
529
|
+
"title": "Checked",
|
|
530
|
+
"type": "boolean"
|
|
531
|
+
},
|
|
532
|
+
"message": {
|
|
533
|
+
"description": "数量提示及调整参数或确认继续的说明",
|
|
534
|
+
"title": "Message",
|
|
535
|
+
"type": "string"
|
|
536
|
+
}
|
|
537
|
+
},
|
|
538
|
+
"required": [
|
|
539
|
+
"checked_at",
|
|
540
|
+
"windows",
|
|
541
|
+
"matched_rows",
|
|
542
|
+
"count_relation",
|
|
543
|
+
"system_limit",
|
|
544
|
+
"effective_limit",
|
|
545
|
+
"would_truncate",
|
|
546
|
+
"message"
|
|
547
|
+
],
|
|
548
|
+
"title": "PrecheckResult",
|
|
549
|
+
"type": "object"
|
|
550
|
+
}
|
|
551
|
+
},
|
|
455
552
|
"additionalProperties": false,
|
|
456
553
|
"description": "订阅 job 出参对象。",
|
|
457
554
|
"properties": {
|
|
555
|
+
"precheck": {
|
|
556
|
+
"anyOf": [
|
|
557
|
+
{
|
|
558
|
+
"$ref": "#/$defs/PrecheckResult"
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
"type": "null"
|
|
562
|
+
}
|
|
563
|
+
],
|
|
564
|
+
"default": null,
|
|
565
|
+
"description": "本次保存的数据量预检摘要;非预检场景为空,不保存到 job"
|
|
566
|
+
},
|
|
567
|
+
"warnings": {
|
|
568
|
+
"description": "本次保存的超量截断提醒;未超量为空,不保存到 job",
|
|
569
|
+
"items": {
|
|
570
|
+
"type": "string"
|
|
571
|
+
},
|
|
572
|
+
"title": "Warnings",
|
|
573
|
+
"type": "array"
|
|
574
|
+
},
|
|
458
575
|
"job_id": {
|
|
459
576
|
"description": "job ID",
|
|
460
577
|
"title": "Job Id",
|
|
@@ -511,7 +628,7 @@
|
|
|
511
628
|
"title": "Udate"
|
|
512
629
|
},
|
|
513
630
|
"fields": {
|
|
514
|
-
"description": "
|
|
631
|
+
"description": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段(空=全量)",
|
|
515
632
|
"items": {
|
|
516
633
|
"type": "string"
|
|
517
634
|
},
|
|
@@ -519,7 +636,7 @@
|
|
|
519
636
|
"type": "array"
|
|
520
637
|
},
|
|
521
638
|
"size": {
|
|
522
|
-
"description": "
|
|
639
|
+
"description": "每次执行最多导出的记录行数;普通批量保存时按系统配置校验,只取前 N 条时上限 10000",
|
|
523
640
|
"title": "Size",
|
|
524
641
|
"type": "integer"
|
|
525
642
|
},
|
|
@@ -599,6 +716,13 @@
|
|
|
599
716
|
"type": "object"
|
|
600
717
|
},
|
|
601
718
|
"flags": [
|
|
719
|
+
{
|
|
720
|
+
"flag": "--confirmed",
|
|
721
|
+
"field": "confirmed",
|
|
722
|
+
"type": "boolean",
|
|
723
|
+
"required": false,
|
|
724
|
+
"desc": "是否已确认继续并同意系统超限处理规则;超量时默认拒绝,true 允许保存但仍按上限截断;不跳过其他校验,不保存到 job,TopN 不适用"
|
|
725
|
+
},
|
|
602
726
|
{
|
|
603
727
|
"flag": "--name",
|
|
604
728
|
"field": "name",
|
|
@@ -653,14 +777,14 @@
|
|
|
653
777
|
"field": "fields",
|
|
654
778
|
"type": "list[str](json)",
|
|
655
779
|
"required": false,
|
|
656
|
-
"desc": "
|
|
780
|
+
"desc": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段;不填拉全量"
|
|
657
781
|
},
|
|
658
782
|
{
|
|
659
783
|
"flag": "--size",
|
|
660
784
|
"field": "size",
|
|
661
785
|
"type": "integer",
|
|
662
786
|
"required": false,
|
|
663
|
-
"desc": "
|
|
787
|
+
"desc": "每次执行最多导出的记录行数。省略则按模式取默认:普通批量默认最多 500000 条,实际以服务端当前约束为准;传了 top(只取前 N 条)则默认 1,000、上限 10,000"
|
|
664
788
|
},
|
|
665
789
|
{
|
|
666
790
|
"flag": "--target",
|
|
@@ -786,10 +910,114 @@
|
|
|
786
910
|
},
|
|
787
911
|
"output_schema": {
|
|
788
912
|
"$defs": {
|
|
913
|
+
"PrecheckResult": {
|
|
914
|
+
"additionalProperties": false,
|
|
915
|
+
"properties": {
|
|
916
|
+
"checked_at": {
|
|
917
|
+
"description": "检查时间,东八区 ISO 时间",
|
|
918
|
+
"title": "Checked At",
|
|
919
|
+
"type": "string"
|
|
920
|
+
},
|
|
921
|
+
"windows": {
|
|
922
|
+
"additionalProperties": {
|
|
923
|
+
"anyOf": [
|
|
924
|
+
{
|
|
925
|
+
"type": "string"
|
|
926
|
+
},
|
|
927
|
+
{
|
|
928
|
+
"type": "null"
|
|
929
|
+
}
|
|
930
|
+
]
|
|
931
|
+
},
|
|
932
|
+
"description": "发布时间、入库时间、更新时间三个维度的绝对闭区间;空表示不过滤",
|
|
933
|
+
"title": "Windows",
|
|
934
|
+
"type": "object"
|
|
935
|
+
},
|
|
936
|
+
"matched_rows": {
|
|
937
|
+
"description": "命中行数;count_relation=gte 时为下界,非精确总量",
|
|
938
|
+
"title": "Matched Rows",
|
|
939
|
+
"type": "integer"
|
|
940
|
+
},
|
|
941
|
+
"count_relation": {
|
|
942
|
+
"description": "eq=精确计数;gte=至少命中该数量",
|
|
943
|
+
"enum": [
|
|
944
|
+
"eq",
|
|
945
|
+
"gte"
|
|
946
|
+
],
|
|
947
|
+
"title": "Count Relation",
|
|
948
|
+
"type": "string"
|
|
949
|
+
},
|
|
950
|
+
"system_limit": {
|
|
951
|
+
"anyOf": [
|
|
952
|
+
{
|
|
953
|
+
"type": "integer"
|
|
954
|
+
},
|
|
955
|
+
{
|
|
956
|
+
"type": "null"
|
|
957
|
+
}
|
|
958
|
+
],
|
|
959
|
+
"description": "普通批量的系统导出上限;TopN 未执行预检时为空",
|
|
960
|
+
"title": "System Limit"
|
|
961
|
+
},
|
|
962
|
+
"effective_limit": {
|
|
963
|
+
"description": "本次生效的单次最大导出行数",
|
|
964
|
+
"title": "Effective Limit",
|
|
965
|
+
"type": "integer"
|
|
966
|
+
},
|
|
967
|
+
"would_truncate": {
|
|
968
|
+
"description": "当前统计是否超出有效导出数量;TopN 不新增预检",
|
|
969
|
+
"title": "Would Truncate",
|
|
970
|
+
"type": "boolean"
|
|
971
|
+
},
|
|
972
|
+
"checked": {
|
|
973
|
+
"default": true,
|
|
974
|
+
"description": "是否执行数据量统计;TopN 为 false",
|
|
975
|
+
"title": "Checked",
|
|
976
|
+
"type": "boolean"
|
|
977
|
+
},
|
|
978
|
+
"message": {
|
|
979
|
+
"description": "数量提示及调整参数或确认继续的说明",
|
|
980
|
+
"title": "Message",
|
|
981
|
+
"type": "string"
|
|
982
|
+
}
|
|
983
|
+
},
|
|
984
|
+
"required": [
|
|
985
|
+
"checked_at",
|
|
986
|
+
"windows",
|
|
987
|
+
"matched_rows",
|
|
988
|
+
"count_relation",
|
|
989
|
+
"system_limit",
|
|
990
|
+
"effective_limit",
|
|
991
|
+
"would_truncate",
|
|
992
|
+
"message"
|
|
993
|
+
],
|
|
994
|
+
"title": "PrecheckResult",
|
|
995
|
+
"type": "object"
|
|
996
|
+
},
|
|
789
997
|
"SubJob": {
|
|
790
998
|
"additionalProperties": false,
|
|
791
999
|
"description": "订阅 job 出参对象。",
|
|
792
1000
|
"properties": {
|
|
1001
|
+
"precheck": {
|
|
1002
|
+
"anyOf": [
|
|
1003
|
+
{
|
|
1004
|
+
"$ref": "#/$defs/PrecheckResult"
|
|
1005
|
+
},
|
|
1006
|
+
{
|
|
1007
|
+
"type": "null"
|
|
1008
|
+
}
|
|
1009
|
+
],
|
|
1010
|
+
"default": null,
|
|
1011
|
+
"description": "本次保存的数据量预检摘要;非预检场景为空,不保存到 job"
|
|
1012
|
+
},
|
|
1013
|
+
"warnings": {
|
|
1014
|
+
"description": "本次保存的超量截断提醒;未超量为空,不保存到 job",
|
|
1015
|
+
"items": {
|
|
1016
|
+
"type": "string"
|
|
1017
|
+
},
|
|
1018
|
+
"title": "Warnings",
|
|
1019
|
+
"type": "array"
|
|
1020
|
+
},
|
|
793
1021
|
"job_id": {
|
|
794
1022
|
"description": "job ID",
|
|
795
1023
|
"title": "Job Id",
|
|
@@ -846,7 +1074,7 @@
|
|
|
846
1074
|
"title": "Udate"
|
|
847
1075
|
},
|
|
848
1076
|
"fields": {
|
|
849
|
-
"description": "
|
|
1077
|
+
"description": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段(空=全量)",
|
|
850
1078
|
"items": {
|
|
851
1079
|
"type": "string"
|
|
852
1080
|
},
|
|
@@ -854,7 +1082,7 @@
|
|
|
854
1082
|
"type": "array"
|
|
855
1083
|
},
|
|
856
1084
|
"size": {
|
|
857
|
-
"description": "
|
|
1085
|
+
"description": "每次执行最多导出的记录行数;普通批量保存时按系统配置校验,只取前 N 条时上限 10000",
|
|
858
1086
|
"title": "Size",
|
|
859
1087
|
"type": "integer"
|
|
860
1088
|
},
|
|
@@ -1068,23 +1296,28 @@
|
|
|
1068
1296
|
"type": "string"
|
|
1069
1297
|
},
|
|
1070
1298
|
"host": {
|
|
1071
|
-
"description": "SFTP
|
|
1299
|
+
"description": "SFTP 主机,不能为空白",
|
|
1300
|
+
"minLength": 1,
|
|
1072
1301
|
"title": "Host",
|
|
1073
1302
|
"type": "string"
|
|
1074
1303
|
},
|
|
1075
1304
|
"port": {
|
|
1076
1305
|
"default": 22,
|
|
1077
|
-
"description": "
|
|
1306
|
+
"description": "端口,1–65535,默认 22",
|
|
1307
|
+
"maximum": 65535,
|
|
1308
|
+
"minimum": 1,
|
|
1078
1309
|
"title": "Port",
|
|
1079
1310
|
"type": "integer"
|
|
1080
1311
|
},
|
|
1081
1312
|
"username": {
|
|
1082
|
-
"description": "
|
|
1313
|
+
"description": "登录用户名,不能为空白",
|
|
1314
|
+
"minLength": 1,
|
|
1083
1315
|
"title": "Username",
|
|
1084
1316
|
"type": "string"
|
|
1085
1317
|
},
|
|
1086
1318
|
"password": {
|
|
1087
|
-
"description": "
|
|
1319
|
+
"description": "登录密码,不能为空白,保留首尾空格",
|
|
1320
|
+
"minLength": 1,
|
|
1088
1321
|
"title": "Password",
|
|
1089
1322
|
"type": "string"
|
|
1090
1323
|
},
|
|
@@ -1254,7 +1487,7 @@
|
|
|
1254
1487
|
"size": {
|
|
1255
1488
|
"anyOf": [
|
|
1256
1489
|
{
|
|
1257
|
-
"maximum":
|
|
1490
|
+
"maximum": 2147483647,
|
|
1258
1491
|
"minimum": 1,
|
|
1259
1492
|
"type": "integer"
|
|
1260
1493
|
},
|
|
@@ -1263,7 +1496,7 @@
|
|
|
1263
1496
|
}
|
|
1264
1497
|
],
|
|
1265
1498
|
"default": null,
|
|
1266
|
-
"description": "
|
|
1499
|
+
"description": "覆盖本次导出行数;不传继承 job.size 并按系统当前上限收紧,显式超限拒绝",
|
|
1267
1500
|
"title": "Size"
|
|
1268
1501
|
}
|
|
1269
1502
|
},
|
|
@@ -1356,7 +1589,7 @@
|
|
|
1356
1589
|
"field": "size",
|
|
1357
1590
|
"type": "integer",
|
|
1358
1591
|
"required": false,
|
|
1359
|
-
"desc": "
|
|
1592
|
+
"desc": "覆盖本次导出行数;不传继承 job.size 并按系统当前上限收紧,显式超限拒绝"
|
|
1360
1593
|
}
|
|
1361
1594
|
],
|
|
1362
1595
|
"transport": {
|
|
@@ -1461,23 +1694,28 @@
|
|
|
1461
1694
|
"type": "string"
|
|
1462
1695
|
},
|
|
1463
1696
|
"host": {
|
|
1464
|
-
"description": "SFTP
|
|
1697
|
+
"description": "SFTP 主机,不能为空白",
|
|
1698
|
+
"minLength": 1,
|
|
1465
1699
|
"title": "Host",
|
|
1466
1700
|
"type": "string"
|
|
1467
1701
|
},
|
|
1468
1702
|
"port": {
|
|
1469
1703
|
"default": 22,
|
|
1470
|
-
"description": "
|
|
1704
|
+
"description": "端口,1–65535,默认 22",
|
|
1705
|
+
"maximum": 65535,
|
|
1706
|
+
"minimum": 1,
|
|
1471
1707
|
"title": "Port",
|
|
1472
1708
|
"type": "integer"
|
|
1473
1709
|
},
|
|
1474
1710
|
"username": {
|
|
1475
|
-
"description": "
|
|
1711
|
+
"description": "登录用户名,不能为空白",
|
|
1712
|
+
"minLength": 1,
|
|
1476
1713
|
"title": "Username",
|
|
1477
1714
|
"type": "string"
|
|
1478
1715
|
},
|
|
1479
1716
|
"password": {
|
|
1480
|
-
"description": "
|
|
1717
|
+
"description": "登录密码,不能为空白,保留首尾空格",
|
|
1718
|
+
"minLength": 1,
|
|
1481
1719
|
"title": "Password",
|
|
1482
1720
|
"type": "string"
|
|
1483
1721
|
},
|
|
@@ -1550,6 +1788,12 @@
|
|
|
1550
1788
|
},
|
|
1551
1789
|
"additionalProperties": false,
|
|
1552
1790
|
"properties": {
|
|
1791
|
+
"confirmed": {
|
|
1792
|
+
"default": false,
|
|
1793
|
+
"description": "是否已确认继续并同意系统超限处理规则;修改取数配置超量时默认拒绝,true 允许保存但仍按上限截断;仅本次有效,TopN 不适用",
|
|
1794
|
+
"title": "Confirmed",
|
|
1795
|
+
"type": "boolean"
|
|
1796
|
+
},
|
|
1553
1797
|
"job_id": {
|
|
1554
1798
|
"description": "目标 job",
|
|
1555
1799
|
"title": "Job Id",
|
|
@@ -1662,13 +1906,13 @@
|
|
|
1662
1906
|
}
|
|
1663
1907
|
],
|
|
1664
1908
|
"default": null,
|
|
1665
|
-
"description": "
|
|
1909
|
+
"description": "业务字段整组全量覆盖;_id 自动输出,禁止在 fields 中填写",
|
|
1666
1910
|
"title": "Fields"
|
|
1667
1911
|
},
|
|
1668
1912
|
"size": {
|
|
1669
1913
|
"anyOf": [
|
|
1670
1914
|
{
|
|
1671
|
-
"maximum":
|
|
1915
|
+
"maximum": 2147483647,
|
|
1672
1916
|
"minimum": 1,
|
|
1673
1917
|
"type": "integer"
|
|
1674
1918
|
},
|
|
@@ -1677,7 +1921,7 @@
|
|
|
1677
1921
|
}
|
|
1678
1922
|
],
|
|
1679
1923
|
"default": null,
|
|
1680
|
-
"description": "
|
|
1924
|
+
"description": "每次执行最多导出的记录行数;不传则不修改,普通批量默认上限 500000,TopN 默认上限 10000,实际以上游返回约束为准",
|
|
1681
1925
|
"title": "Size"
|
|
1682
1926
|
},
|
|
1683
1927
|
"frequency": {
|
|
@@ -1767,9 +2011,115 @@
|
|
|
1767
2011
|
"type": "object"
|
|
1768
2012
|
},
|
|
1769
2013
|
"output_schema": {
|
|
2014
|
+
"$defs": {
|
|
2015
|
+
"PrecheckResult": {
|
|
2016
|
+
"additionalProperties": false,
|
|
2017
|
+
"properties": {
|
|
2018
|
+
"checked_at": {
|
|
2019
|
+
"description": "检查时间,东八区 ISO 时间",
|
|
2020
|
+
"title": "Checked At",
|
|
2021
|
+
"type": "string"
|
|
2022
|
+
},
|
|
2023
|
+
"windows": {
|
|
2024
|
+
"additionalProperties": {
|
|
2025
|
+
"anyOf": [
|
|
2026
|
+
{
|
|
2027
|
+
"type": "string"
|
|
2028
|
+
},
|
|
2029
|
+
{
|
|
2030
|
+
"type": "null"
|
|
2031
|
+
}
|
|
2032
|
+
]
|
|
2033
|
+
},
|
|
2034
|
+
"description": "发布时间、入库时间、更新时间三个维度的绝对闭区间;空表示不过滤",
|
|
2035
|
+
"title": "Windows",
|
|
2036
|
+
"type": "object"
|
|
2037
|
+
},
|
|
2038
|
+
"matched_rows": {
|
|
2039
|
+
"description": "命中行数;count_relation=gte 时为下界,非精确总量",
|
|
2040
|
+
"title": "Matched Rows",
|
|
2041
|
+
"type": "integer"
|
|
2042
|
+
},
|
|
2043
|
+
"count_relation": {
|
|
2044
|
+
"description": "eq=精确计数;gte=至少命中该数量",
|
|
2045
|
+
"enum": [
|
|
2046
|
+
"eq",
|
|
2047
|
+
"gte"
|
|
2048
|
+
],
|
|
2049
|
+
"title": "Count Relation",
|
|
2050
|
+
"type": "string"
|
|
2051
|
+
},
|
|
2052
|
+
"system_limit": {
|
|
2053
|
+
"anyOf": [
|
|
2054
|
+
{
|
|
2055
|
+
"type": "integer"
|
|
2056
|
+
},
|
|
2057
|
+
{
|
|
2058
|
+
"type": "null"
|
|
2059
|
+
}
|
|
2060
|
+
],
|
|
2061
|
+
"description": "普通批量的系统导出上限;TopN 未执行预检时为空",
|
|
2062
|
+
"title": "System Limit"
|
|
2063
|
+
},
|
|
2064
|
+
"effective_limit": {
|
|
2065
|
+
"description": "本次生效的单次最大导出行数",
|
|
2066
|
+
"title": "Effective Limit",
|
|
2067
|
+
"type": "integer"
|
|
2068
|
+
},
|
|
2069
|
+
"would_truncate": {
|
|
2070
|
+
"description": "当前统计是否超出有效导出数量;TopN 不新增预检",
|
|
2071
|
+
"title": "Would Truncate",
|
|
2072
|
+
"type": "boolean"
|
|
2073
|
+
},
|
|
2074
|
+
"checked": {
|
|
2075
|
+
"default": true,
|
|
2076
|
+
"description": "是否执行数据量统计;TopN 为 false",
|
|
2077
|
+
"title": "Checked",
|
|
2078
|
+
"type": "boolean"
|
|
2079
|
+
},
|
|
2080
|
+
"message": {
|
|
2081
|
+
"description": "数量提示及调整参数或确认继续的说明",
|
|
2082
|
+
"title": "Message",
|
|
2083
|
+
"type": "string"
|
|
2084
|
+
}
|
|
2085
|
+
},
|
|
2086
|
+
"required": [
|
|
2087
|
+
"checked_at",
|
|
2088
|
+
"windows",
|
|
2089
|
+
"matched_rows",
|
|
2090
|
+
"count_relation",
|
|
2091
|
+
"system_limit",
|
|
2092
|
+
"effective_limit",
|
|
2093
|
+
"would_truncate",
|
|
2094
|
+
"message"
|
|
2095
|
+
],
|
|
2096
|
+
"title": "PrecheckResult",
|
|
2097
|
+
"type": "object"
|
|
2098
|
+
}
|
|
2099
|
+
},
|
|
1770
2100
|
"additionalProperties": false,
|
|
1771
2101
|
"description": "订阅 job 出参对象。",
|
|
1772
2102
|
"properties": {
|
|
2103
|
+
"precheck": {
|
|
2104
|
+
"anyOf": [
|
|
2105
|
+
{
|
|
2106
|
+
"$ref": "#/$defs/PrecheckResult"
|
|
2107
|
+
},
|
|
2108
|
+
{
|
|
2109
|
+
"type": "null"
|
|
2110
|
+
}
|
|
2111
|
+
],
|
|
2112
|
+
"default": null,
|
|
2113
|
+
"description": "本次保存的数据量预检摘要;非预检场景为空,不保存到 job"
|
|
2114
|
+
},
|
|
2115
|
+
"warnings": {
|
|
2116
|
+
"description": "本次保存的超量截断提醒;未超量为空,不保存到 job",
|
|
2117
|
+
"items": {
|
|
2118
|
+
"type": "string"
|
|
2119
|
+
},
|
|
2120
|
+
"title": "Warnings",
|
|
2121
|
+
"type": "array"
|
|
2122
|
+
},
|
|
1773
2123
|
"job_id": {
|
|
1774
2124
|
"description": "job ID",
|
|
1775
2125
|
"title": "Job Id",
|
|
@@ -1826,7 +2176,7 @@
|
|
|
1826
2176
|
"title": "Udate"
|
|
1827
2177
|
},
|
|
1828
2178
|
"fields": {
|
|
1829
|
-
"description": "
|
|
2179
|
+
"description": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段(空=全量)",
|
|
1830
2180
|
"items": {
|
|
1831
2181
|
"type": "string"
|
|
1832
2182
|
},
|
|
@@ -1834,7 +2184,7 @@
|
|
|
1834
2184
|
"type": "array"
|
|
1835
2185
|
},
|
|
1836
2186
|
"size": {
|
|
1837
|
-
"description": "
|
|
2187
|
+
"description": "每次执行最多导出的记录行数;普通批量保存时按系统配置校验,只取前 N 条时上限 10000",
|
|
1838
2188
|
"title": "Size",
|
|
1839
2189
|
"type": "integer"
|
|
1840
2190
|
},
|
|
@@ -1914,6 +2264,13 @@
|
|
|
1914
2264
|
"type": "object"
|
|
1915
2265
|
},
|
|
1916
2266
|
"flags": [
|
|
2267
|
+
{
|
|
2268
|
+
"flag": "--confirmed",
|
|
2269
|
+
"field": "confirmed",
|
|
2270
|
+
"type": "boolean",
|
|
2271
|
+
"required": false,
|
|
2272
|
+
"desc": "是否已确认继续并同意系统超限处理规则;修改取数配置超量时默认拒绝,true 允许保存但仍按上限截断;仅本次有效,TopN 不适用"
|
|
2273
|
+
},
|
|
1917
2274
|
{
|
|
1918
2275
|
"flag": "--job-id",
|
|
1919
2276
|
"field": "job_id",
|
|
@@ -1968,14 +2325,14 @@
|
|
|
1968
2325
|
"field": "fields",
|
|
1969
2326
|
"type": "list[str](json)",
|
|
1970
2327
|
"required": false,
|
|
1971
|
-
"desc": "
|
|
2328
|
+
"desc": "业务字段整组全量覆盖;_id 自动输出,禁止在 fields 中填写"
|
|
1972
2329
|
},
|
|
1973
2330
|
{
|
|
1974
2331
|
"flag": "--size",
|
|
1975
2332
|
"field": "size",
|
|
1976
2333
|
"type": "integer",
|
|
1977
2334
|
"required": false,
|
|
1978
|
-
"desc": "
|
|
2335
|
+
"desc": "每次执行最多导出的记录行数;不传则不修改,普通批量默认上限 500000,TopN 默认上限 10000,实际以上游返回约束为准"
|
|
1979
2336
|
},
|
|
1980
2337
|
{
|
|
1981
2338
|
"flag": "--frequency",
|
|
@@ -2063,13 +2420,25 @@
|
|
|
2063
2420
|
"$defs": {
|
|
2064
2421
|
"SubField": {
|
|
2065
2422
|
"additionalProperties": false,
|
|
2066
|
-
"description": "
|
|
2423
|
+
"description": "一个字段的订阅口径描述;selectable 区分可选业务字段与自动输出的系统字段。",
|
|
2067
2424
|
"properties": {
|
|
2068
2425
|
"name_en": {
|
|
2069
|
-
"description": "字段标识(ES 字段名)
|
|
2426
|
+
"description": "字段标识(ES 字段名),仅 selectable=true 时可填入 job_create / job_update 的 fields",
|
|
2070
2427
|
"title": "Name En",
|
|
2071
2428
|
"type": "string"
|
|
2072
2429
|
},
|
|
2430
|
+
"field_origin": {
|
|
2431
|
+
"default": "source",
|
|
2432
|
+
"description": "字段来源:source 为业务字段,system 为系统字段",
|
|
2433
|
+
"title": "Field Origin",
|
|
2434
|
+
"type": "string"
|
|
2435
|
+
},
|
|
2436
|
+
"selectable": {
|
|
2437
|
+
"default": true,
|
|
2438
|
+
"description": "是否允许填入 fields;_id 自动输出,不可填写",
|
|
2439
|
+
"title": "Selectable",
|
|
2440
|
+
"type": "boolean"
|
|
2441
|
+
},
|
|
2073
2442
|
"name": {
|
|
2074
2443
|
"description": "字段中文名 —— 把用户说法对齐到 name_en 用",
|
|
2075
2444
|
"title": "Name",
|
|
@@ -2210,6 +2579,733 @@
|
|
|
2210
2579
|
"internal"
|
|
2211
2580
|
]
|
|
2212
2581
|
},
|
|
2582
|
+
{
|
|
2583
|
+
"action": "precheck",
|
|
2584
|
+
"op": "precheck",
|
|
2585
|
+
"name": "subscription/precheck",
|
|
2586
|
+
"summary": "可选预览订阅创建/修改的数据量;正式保存会重新检查,TopN 保持原样。",
|
|
2587
|
+
"description": "可选预览订阅创建/修改的数据量;正式保存会重新检查,TopN 保持原样。",
|
|
2588
|
+
"input_schema": {
|
|
2589
|
+
"$defs": {
|
|
2590
|
+
"KafkaTarget": {
|
|
2591
|
+
"additionalProperties": false,
|
|
2592
|
+
"description": "kafka(规划):把记录流投送到 topic(无文件)。",
|
|
2593
|
+
"properties": {
|
|
2594
|
+
"type": {
|
|
2595
|
+
"const": "kafka",
|
|
2596
|
+
"description": "固定 kafka",
|
|
2597
|
+
"title": "Type",
|
|
2598
|
+
"type": "string"
|
|
2599
|
+
},
|
|
2600
|
+
"brokers": {
|
|
2601
|
+
"description": "broker 列表(逗号分隔)",
|
|
2602
|
+
"title": "Brokers",
|
|
2603
|
+
"type": "string"
|
|
2604
|
+
},
|
|
2605
|
+
"topic": {
|
|
2606
|
+
"description": "目标 topic",
|
|
2607
|
+
"title": "Topic",
|
|
2608
|
+
"type": "string"
|
|
2609
|
+
},
|
|
2610
|
+
"key_field": {
|
|
2611
|
+
"anyOf": [
|
|
2612
|
+
{
|
|
2613
|
+
"type": "string"
|
|
2614
|
+
},
|
|
2615
|
+
{
|
|
2616
|
+
"type": "null"
|
|
2617
|
+
}
|
|
2618
|
+
],
|
|
2619
|
+
"default": null,
|
|
2620
|
+
"description": "作为消息 key 的字段名",
|
|
2621
|
+
"title": "Key Field"
|
|
2622
|
+
}
|
|
2623
|
+
},
|
|
2624
|
+
"required": [
|
|
2625
|
+
"type",
|
|
2626
|
+
"brokers",
|
|
2627
|
+
"topic"
|
|
2628
|
+
],
|
|
2629
|
+
"title": "KafkaTarget",
|
|
2630
|
+
"type": "object"
|
|
2631
|
+
},
|
|
2632
|
+
"OctoTarget": {
|
|
2633
|
+
"additionalProperties": false,
|
|
2634
|
+
"description": "octo(本期,默认):导出文件上传 octo 存储,产出 CDN 下载 url(写入 file_info.url)。",
|
|
2635
|
+
"properties": {
|
|
2636
|
+
"type": {
|
|
2637
|
+
"const": "octo",
|
|
2638
|
+
"description": "固定 octo",
|
|
2639
|
+
"title": "Type",
|
|
2640
|
+
"type": "string"
|
|
2641
|
+
},
|
|
2642
|
+
"format": {
|
|
2643
|
+
"default": "json",
|
|
2644
|
+
"description": "文件格式:csv/excel/json(默认 json)",
|
|
2645
|
+
"enum": [
|
|
2646
|
+
"csv",
|
|
2647
|
+
"excel",
|
|
2648
|
+
"json"
|
|
2649
|
+
],
|
|
2650
|
+
"title": "Format",
|
|
2651
|
+
"type": "string"
|
|
2652
|
+
}
|
|
2653
|
+
},
|
|
2654
|
+
"required": [
|
|
2655
|
+
"type"
|
|
2656
|
+
],
|
|
2657
|
+
"title": "OctoTarget",
|
|
2658
|
+
"type": "object"
|
|
2659
|
+
},
|
|
2660
|
+
"SftpTarget": {
|
|
2661
|
+
"additionalProperties": false,
|
|
2662
|
+
"description": "sftp(本期):把导出文件上传到 SFTP 远端目录。\n目录与文件名都支持日期变量 ``yyyyMMdd`` / ``yyyyMM`` / ``yyyy``,同一个 task\n重跑多少次,远端路径与文件名都不变。",
|
|
2663
|
+
"properties": {
|
|
2664
|
+
"type": {
|
|
2665
|
+
"const": "sftp",
|
|
2666
|
+
"description": "固定 sftp",
|
|
2667
|
+
"title": "Type",
|
|
2668
|
+
"type": "string"
|
|
2669
|
+
},
|
|
2670
|
+
"host": {
|
|
2671
|
+
"description": "SFTP 主机,不能为空白",
|
|
2672
|
+
"minLength": 1,
|
|
2673
|
+
"title": "Host",
|
|
2674
|
+
"type": "string"
|
|
2675
|
+
},
|
|
2676
|
+
"port": {
|
|
2677
|
+
"default": 22,
|
|
2678
|
+
"description": "端口,1–65535,默认 22",
|
|
2679
|
+
"maximum": 65535,
|
|
2680
|
+
"minimum": 1,
|
|
2681
|
+
"title": "Port",
|
|
2682
|
+
"type": "integer"
|
|
2683
|
+
},
|
|
2684
|
+
"username": {
|
|
2685
|
+
"description": "登录用户名,不能为空白",
|
|
2686
|
+
"minLength": 1,
|
|
2687
|
+
"title": "Username",
|
|
2688
|
+
"type": "string"
|
|
2689
|
+
},
|
|
2690
|
+
"password": {
|
|
2691
|
+
"description": "登录密码,不能为空白,保留首尾空格",
|
|
2692
|
+
"minLength": 1,
|
|
2693
|
+
"title": "Password",
|
|
2694
|
+
"type": "string"
|
|
2695
|
+
},
|
|
2696
|
+
"remote_path": {
|
|
2697
|
+
"description": "远端目录/路径。可在**任意一层**用日期变量,但变量必须**独占一层**:`/data/sub/yyyyMM/yyyyMMdd` 合法,`/data/sub_yyyyMMdd` 非法。只认 yyyyMMdd / yyyyMM / yyyy 三种;不允许 '..'、空目录层。",
|
|
2698
|
+
"title": "Remote Path",
|
|
2699
|
+
"type": "string"
|
|
2700
|
+
},
|
|
2701
|
+
"filename_template": {
|
|
2702
|
+
"anyOf": [
|
|
2703
|
+
{
|
|
2704
|
+
"type": "string"
|
|
2705
|
+
},
|
|
2706
|
+
{
|
|
2707
|
+
"type": "null"
|
|
2708
|
+
}
|
|
2709
|
+
],
|
|
2710
|
+
"default": null,
|
|
2711
|
+
"description": "自定义文件名模板(不含扩展名)。只允许字母、数字、'_'、'-' 与日期变量,且变量前后必须是 '_' 或首尾:`daily_yyyyMMdd_export`、`yyyyMM_summary` 合法,`dailyyyyyMMdd`、`report-yyyyMMdd-x` 非法。系统统一追加 `_<task_id>` 与扩展名。不传=沿用默认 `<job_id>_<task_id>.<ext>`。",
|
|
2712
|
+
"title": "Filename Template"
|
|
2713
|
+
},
|
|
2714
|
+
"format": {
|
|
2715
|
+
"default": "json",
|
|
2716
|
+
"description": "文件格式:csv/excel/json(默认 json)",
|
|
2717
|
+
"enum": [
|
|
2718
|
+
"csv",
|
|
2719
|
+
"excel",
|
|
2720
|
+
"json"
|
|
2721
|
+
],
|
|
2722
|
+
"title": "Format",
|
|
2723
|
+
"type": "string"
|
|
2724
|
+
}
|
|
2725
|
+
},
|
|
2726
|
+
"required": [
|
|
2727
|
+
"type",
|
|
2728
|
+
"host",
|
|
2729
|
+
"username",
|
|
2730
|
+
"password",
|
|
2731
|
+
"remote_path"
|
|
2732
|
+
],
|
|
2733
|
+
"title": "SftpTarget",
|
|
2734
|
+
"type": "object"
|
|
2735
|
+
},
|
|
2736
|
+
"SubJobCreateInput": {
|
|
2737
|
+
"additionalProperties": false,
|
|
2738
|
+
"properties": {
|
|
2739
|
+
"confirmed": {
|
|
2740
|
+
"default": false,
|
|
2741
|
+
"description": "是否已确认继续并同意系统超限处理规则;超量时默认拒绝,true 允许保存但仍按上限截断;不跳过其他校验,不保存到 job,TopN 不适用",
|
|
2742
|
+
"title": "Confirmed",
|
|
2743
|
+
"type": "boolean"
|
|
2744
|
+
},
|
|
2745
|
+
"name": {
|
|
2746
|
+
"description": "job 名称,同一凭证(token)下唯一",
|
|
2747
|
+
"maxLength": 128,
|
|
2748
|
+
"minLength": 1,
|
|
2749
|
+
"title": "Name",
|
|
2750
|
+
"type": "string"
|
|
2751
|
+
},
|
|
2752
|
+
"rule_ids": {
|
|
2753
|
+
"description": "魔方规则ID数组,至少 1 个",
|
|
2754
|
+
"items": {
|
|
2755
|
+
"minLength": 1,
|
|
2756
|
+
"type": "string"
|
|
2757
|
+
},
|
|
2758
|
+
"minItems": 1,
|
|
2759
|
+
"title": "Rule Ids",
|
|
2760
|
+
"type": "array"
|
|
2761
|
+
},
|
|
2762
|
+
"source": {
|
|
2763
|
+
"description": "站点数组,至少 1 个;只能取已配置站点",
|
|
2764
|
+
"items": {
|
|
2765
|
+
"minLength": 1,
|
|
2766
|
+
"type": "string"
|
|
2767
|
+
},
|
|
2768
|
+
"minItems": 1,
|
|
2769
|
+
"title": "Source",
|
|
2770
|
+
"type": "array"
|
|
2771
|
+
},
|
|
2772
|
+
"published": {
|
|
2773
|
+
"description": "**发布时间**口径(必填,主口径 —— 它同时决定查哪个月的索引、怎么拆分片,所以不能缺省)。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
2774
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)$",
|
|
2775
|
+
"title": "Published",
|
|
2776
|
+
"type": "string"
|
|
2777
|
+
},
|
|
2778
|
+
"idate": {
|
|
2779
|
+
"anyOf": [
|
|
2780
|
+
{
|
|
2781
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)$",
|
|
2782
|
+
"type": "string"
|
|
2783
|
+
},
|
|
2784
|
+
{
|
|
2785
|
+
"type": "null"
|
|
2786
|
+
}
|
|
2787
|
+
],
|
|
2788
|
+
"default": null,
|
|
2789
|
+
"description": "**入库时间**口径(选填,不传=该维度不过滤)。在发布时间窗**之内**再 AND 一层:入库时间落在本区间的数据。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
2790
|
+
"title": "Idate"
|
|
2791
|
+
},
|
|
2792
|
+
"udate": {
|
|
2793
|
+
"anyOf": [
|
|
2794
|
+
{
|
|
2795
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)$",
|
|
2796
|
+
"type": "string"
|
|
2797
|
+
},
|
|
2798
|
+
{
|
|
2799
|
+
"type": "null"
|
|
2800
|
+
}
|
|
2801
|
+
],
|
|
2802
|
+
"default": null,
|
|
2803
|
+
"description": "**更新时间**口径(选填,不传=该维度不过滤)。在发布时间窗**之内**再 AND 一层:更新时间落在本区间的数据。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
2804
|
+
"title": "Udate"
|
|
2805
|
+
},
|
|
2806
|
+
"frequency": {
|
|
2807
|
+
"description": "自然语言同步频率,系统转 cron(东八区)。可指定具体时间、并**支持一天多次**:如「每天9点」「每天9点和15点」(一天跑两次)「每周一9点」「每小时」「每30分钟」。无法解析为 cron 会被拒绝。",
|
|
2808
|
+
"maxLength": 64,
|
|
2809
|
+
"minLength": 1,
|
|
2810
|
+
"title": "Frequency",
|
|
2811
|
+
"type": "string"
|
|
2812
|
+
},
|
|
2813
|
+
"fields": {
|
|
2814
|
+
"description": "_id 自动输出,禁止在 fields 中填写;拉取/导出字段;不填拉全量",
|
|
2815
|
+
"items": {
|
|
2816
|
+
"minLength": 1,
|
|
2817
|
+
"type": "string"
|
|
2818
|
+
},
|
|
2819
|
+
"title": "Fields",
|
|
2820
|
+
"type": "array"
|
|
2821
|
+
},
|
|
2822
|
+
"size": {
|
|
2823
|
+
"anyOf": [
|
|
2824
|
+
{
|
|
2825
|
+
"maximum": 2147483647,
|
|
2826
|
+
"minimum": 1,
|
|
2827
|
+
"type": "integer"
|
|
2828
|
+
},
|
|
2829
|
+
{
|
|
2830
|
+
"type": "null"
|
|
2831
|
+
}
|
|
2832
|
+
],
|
|
2833
|
+
"default": null,
|
|
2834
|
+
"description": "每次执行最多导出的记录行数。省略则按模式取默认:普通批量默认最多 500000 条,实际以服务端当前约束为准;传了 top(只取前 N 条)则默认 1,000、上限 10,000",
|
|
2835
|
+
"title": "Size"
|
|
2836
|
+
},
|
|
2837
|
+
"target": {
|
|
2838
|
+
"anyOf": [
|
|
2839
|
+
{
|
|
2840
|
+
"discriminator": {
|
|
2841
|
+
"mapping": {
|
|
2842
|
+
"kafka": "#/$defs/KafkaTarget",
|
|
2843
|
+
"octo": "#/$defs/OctoTarget",
|
|
2844
|
+
"sftp": "#/$defs/SftpTarget"
|
|
2845
|
+
},
|
|
2846
|
+
"propertyName": "type"
|
|
2847
|
+
},
|
|
2848
|
+
"oneOf": [
|
|
2849
|
+
{
|
|
2850
|
+
"$ref": "#/$defs/OctoTarget"
|
|
2851
|
+
},
|
|
2852
|
+
{
|
|
2853
|
+
"$ref": "#/$defs/SftpTarget"
|
|
2854
|
+
},
|
|
2855
|
+
{
|
|
2856
|
+
"$ref": "#/$defs/KafkaTarget"
|
|
2857
|
+
}
|
|
2858
|
+
]
|
|
2859
|
+
},
|
|
2860
|
+
{
|
|
2861
|
+
"type": "null"
|
|
2862
|
+
}
|
|
2863
|
+
],
|
|
2864
|
+
"default": null,
|
|
2865
|
+
"description": "投递目标;省略默认 octo(json)。本期支持 octo(上传存储→CDN url)与 sftp(账密上传远端,路径/文件名可用日期变量);kafka: 暂未实现。",
|
|
2866
|
+
"title": "Target"
|
|
2867
|
+
},
|
|
2868
|
+
"top": {
|
|
2869
|
+
"anyOf": [
|
|
2870
|
+
{
|
|
2871
|
+
"items": {
|
|
2872
|
+
"$ref": "#/$defs/TopSpec"
|
|
2873
|
+
},
|
|
2874
|
+
"type": "array"
|
|
2875
|
+
},
|
|
2876
|
+
{
|
|
2877
|
+
"type": "null"
|
|
2878
|
+
}
|
|
2879
|
+
],
|
|
2880
|
+
"default": null,
|
|
2881
|
+
"description": "只取前 N 条(可选)。**不改变筛选条件** —— 省略时给命中条件的全部数据,传了则在同一批命中结果里按指定字段排序、只取前 size 条。排序跨发布窗内所有日期 / 站点 / 规则**全局生效**(不是每天各取 N)。多字段按顺序作排序优先级(前者相同时比后者)。字段必须是可排序类型(keyword / long / double / date)。该模式下 size 默认 1,000、最大 10,000;且多条规则改为 OR 合并并去重,导出的 kw_ruleId 恒为 topN、无法区分来源规则",
|
|
2882
|
+
"title": "Top"
|
|
2883
|
+
}
|
|
2884
|
+
},
|
|
2885
|
+
"required": [
|
|
2886
|
+
"name",
|
|
2887
|
+
"rule_ids",
|
|
2888
|
+
"source",
|
|
2889
|
+
"published",
|
|
2890
|
+
"frequency"
|
|
2891
|
+
],
|
|
2892
|
+
"title": "SubJobCreateInput",
|
|
2893
|
+
"type": "object"
|
|
2894
|
+
},
|
|
2895
|
+
"SubJobUpdateInput": {
|
|
2896
|
+
"additionalProperties": false,
|
|
2897
|
+
"properties": {
|
|
2898
|
+
"confirmed": {
|
|
2899
|
+
"default": false,
|
|
2900
|
+
"description": "是否已确认继续并同意系统超限处理规则;修改取数配置超量时默认拒绝,true 允许保存但仍按上限截断;仅本次有效,TopN 不适用",
|
|
2901
|
+
"title": "Confirmed",
|
|
2902
|
+
"type": "boolean"
|
|
2903
|
+
},
|
|
2904
|
+
"job_id": {
|
|
2905
|
+
"description": "目标 job",
|
|
2906
|
+
"title": "Job Id",
|
|
2907
|
+
"type": "integer"
|
|
2908
|
+
},
|
|
2909
|
+
"name": {
|
|
2910
|
+
"anyOf": [
|
|
2911
|
+
{
|
|
2912
|
+
"maxLength": 128,
|
|
2913
|
+
"minLength": 1,
|
|
2914
|
+
"type": "string"
|
|
2915
|
+
},
|
|
2916
|
+
{
|
|
2917
|
+
"type": "null"
|
|
2918
|
+
}
|
|
2919
|
+
],
|
|
2920
|
+
"default": null,
|
|
2921
|
+
"description": "新名称(同一凭证下唯一)",
|
|
2922
|
+
"title": "Name"
|
|
2923
|
+
},
|
|
2924
|
+
"rule_ids": {
|
|
2925
|
+
"anyOf": [
|
|
2926
|
+
{
|
|
2927
|
+
"items": {
|
|
2928
|
+
"minLength": 1,
|
|
2929
|
+
"type": "string"
|
|
2930
|
+
},
|
|
2931
|
+
"minItems": 1,
|
|
2932
|
+
"type": "array"
|
|
2933
|
+
},
|
|
2934
|
+
{
|
|
2935
|
+
"type": "null"
|
|
2936
|
+
}
|
|
2937
|
+
],
|
|
2938
|
+
"default": null,
|
|
2939
|
+
"description": "整组全量覆盖",
|
|
2940
|
+
"title": "Rule Ids"
|
|
2941
|
+
},
|
|
2942
|
+
"source": {
|
|
2943
|
+
"anyOf": [
|
|
2944
|
+
{
|
|
2945
|
+
"items": {
|
|
2946
|
+
"minLength": 1,
|
|
2947
|
+
"type": "string"
|
|
2948
|
+
},
|
|
2949
|
+
"minItems": 1,
|
|
2950
|
+
"type": "array"
|
|
2951
|
+
},
|
|
2952
|
+
{
|
|
2953
|
+
"type": "null"
|
|
2954
|
+
}
|
|
2955
|
+
],
|
|
2956
|
+
"default": null,
|
|
2957
|
+
"description": "整组全量覆盖",
|
|
2958
|
+
"title": "Source"
|
|
2959
|
+
},
|
|
2960
|
+
"published": {
|
|
2961
|
+
"anyOf": [
|
|
2962
|
+
{
|
|
2963
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)$",
|
|
2964
|
+
"type": "string"
|
|
2965
|
+
},
|
|
2966
|
+
{
|
|
2967
|
+
"type": "null"
|
|
2968
|
+
}
|
|
2969
|
+
],
|
|
2970
|
+
"default": null,
|
|
2971
|
+
"description": "**发布时间**口径(必填字段,只能改不能清)。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
2972
|
+
"title": "Published"
|
|
2973
|
+
},
|
|
2974
|
+
"idate": {
|
|
2975
|
+
"anyOf": [
|
|
2976
|
+
{
|
|
2977
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)?$",
|
|
2978
|
+
"type": "string"
|
|
2979
|
+
},
|
|
2980
|
+
{
|
|
2981
|
+
"type": "null"
|
|
2982
|
+
}
|
|
2983
|
+
],
|
|
2984
|
+
"default": null,
|
|
2985
|
+
"description": "**入库时间**口径。不传=不改;传空串 \"\"=**清除**该维度(恢复成不过滤)。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
2986
|
+
"title": "Idate"
|
|
2987
|
+
},
|
|
2988
|
+
"udate": {
|
|
2989
|
+
"anyOf": [
|
|
2990
|
+
{
|
|
2991
|
+
"pattern": "^(?:T-\\d+~T-\\d+|T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d~T-\\d+@(?:[01]\\d|2[0-3]):[0-5]\\d)?$",
|
|
2992
|
+
"type": "string"
|
|
2993
|
+
},
|
|
2994
|
+
{
|
|
2995
|
+
"type": "null"
|
|
2996
|
+
}
|
|
2997
|
+
],
|
|
2998
|
+
"default": null,
|
|
2999
|
+
"description": "**更新时间**口径。不传=不改;传空串 \"\"=**清除**该维度(恢复成不过滤)。支持两种相对时间口径:**按天 T-M~T-N** 与**按分钟 T-M@HH:mm~T-N@HH:mm**。M/N 是相对基准日的天数偏移,HH:mm 使用 24 小时制(00:00–23:59);基准时间取本次触发的 cron 槽位时间(东八区),手动触发取触发时间。**两个端点都必须写全且精度必须一致**:不接受 T-1 单值简写,也不允许T-1@07:00~T-0 这类按天、按分钟混用。所有口径均为左闭右闭区间 [start,end],即起止端点都包含。按天格式包含首尾自然日,查询时起始日补 00:00:00、结束日补 23:59:59。例如:T-0~T-0=今天;T-1~T-1=昨天;T-2~T-1=前天到昨天;T-7~T-1=近7天到昨天。按分钟格式包含首尾分钟,查询时起始分钟补 :00、结束分钟补 :59。例如:T-1@07:00~T-0@06:59=昨天07:00:00至今天06:59:59,完整覆盖昨天7点到今天6点时段;T-0@09:30~T-0@10:45=今天09:30:00至10:45:59。起点不得晚于终点;跨度最多 731 天(两年)、偏移最多 915 天(30个月),超限直接报错(不会静默回落)。",
|
|
3000
|
+
"title": "Udate"
|
|
3001
|
+
},
|
|
3002
|
+
"fields": {
|
|
3003
|
+
"anyOf": [
|
|
3004
|
+
{
|
|
3005
|
+
"items": {
|
|
3006
|
+
"minLength": 1,
|
|
3007
|
+
"type": "string"
|
|
3008
|
+
},
|
|
3009
|
+
"type": "array"
|
|
3010
|
+
},
|
|
3011
|
+
{
|
|
3012
|
+
"type": "null"
|
|
3013
|
+
}
|
|
3014
|
+
],
|
|
3015
|
+
"default": null,
|
|
3016
|
+
"description": "业务字段整组全量覆盖;_id 自动输出,禁止在 fields 中填写",
|
|
3017
|
+
"title": "Fields"
|
|
3018
|
+
},
|
|
3019
|
+
"size": {
|
|
3020
|
+
"anyOf": [
|
|
3021
|
+
{
|
|
3022
|
+
"maximum": 2147483647,
|
|
3023
|
+
"minimum": 1,
|
|
3024
|
+
"type": "integer"
|
|
3025
|
+
},
|
|
3026
|
+
{
|
|
3027
|
+
"type": "null"
|
|
3028
|
+
}
|
|
3029
|
+
],
|
|
3030
|
+
"default": null,
|
|
3031
|
+
"description": "每次执行最多导出的记录行数;不传则不修改,普通批量默认上限 500000,TopN 默认上限 10000,实际以上游返回约束为准",
|
|
3032
|
+
"title": "Size"
|
|
3033
|
+
},
|
|
3034
|
+
"frequency": {
|
|
3035
|
+
"anyOf": [
|
|
3036
|
+
{
|
|
3037
|
+
"maxLength": 64,
|
|
3038
|
+
"minLength": 1,
|
|
3039
|
+
"type": "string"
|
|
3040
|
+
},
|
|
3041
|
+
{
|
|
3042
|
+
"type": "null"
|
|
3043
|
+
}
|
|
3044
|
+
],
|
|
3045
|
+
"default": null,
|
|
3046
|
+
"description": "传入则按新频率重算 cron(用法同创建;支持一天多次,如「每天9点和15点」);无法解析为 cron 会被拒绝",
|
|
3047
|
+
"title": "Frequency"
|
|
3048
|
+
},
|
|
3049
|
+
"target": {
|
|
3050
|
+
"anyOf": [
|
|
3051
|
+
{
|
|
3052
|
+
"discriminator": {
|
|
3053
|
+
"mapping": {
|
|
3054
|
+
"kafka": "#/$defs/KafkaTarget",
|
|
3055
|
+
"octo": "#/$defs/OctoTarget",
|
|
3056
|
+
"sftp": "#/$defs/SftpTarget"
|
|
3057
|
+
},
|
|
3058
|
+
"propertyName": "type"
|
|
3059
|
+
},
|
|
3060
|
+
"oneOf": [
|
|
3061
|
+
{
|
|
3062
|
+
"$ref": "#/$defs/OctoTarget"
|
|
3063
|
+
},
|
|
3064
|
+
{
|
|
3065
|
+
"$ref": "#/$defs/SftpTarget"
|
|
3066
|
+
},
|
|
3067
|
+
{
|
|
3068
|
+
"$ref": "#/$defs/KafkaTarget"
|
|
3069
|
+
}
|
|
3070
|
+
]
|
|
3071
|
+
},
|
|
3072
|
+
{
|
|
3073
|
+
"type": "null"
|
|
3074
|
+
}
|
|
3075
|
+
],
|
|
3076
|
+
"default": null,
|
|
3077
|
+
"description": "整体替换投递目标",
|
|
3078
|
+
"title": "Target"
|
|
3079
|
+
},
|
|
3080
|
+
"top": {
|
|
3081
|
+
"anyOf": [
|
|
3082
|
+
{
|
|
3083
|
+
"items": {
|
|
3084
|
+
"$ref": "#/$defs/TopSpec"
|
|
3085
|
+
},
|
|
3086
|
+
"type": "array"
|
|
3087
|
+
},
|
|
3088
|
+
{
|
|
3089
|
+
"type": "null"
|
|
3090
|
+
}
|
|
3091
|
+
],
|
|
3092
|
+
"default": null,
|
|
3093
|
+
"description": "只取前 N 条的排序规格:传入则整组替换,不传则不修改。切到该模式后 size 最大 10,000;传空数组 [] 表示改回「给全部命中数据」",
|
|
3094
|
+
"title": "Top"
|
|
3095
|
+
},
|
|
3096
|
+
"active": {
|
|
3097
|
+
"anyOf": [
|
|
3098
|
+
{
|
|
3099
|
+
"enum": [
|
|
3100
|
+
0,
|
|
3101
|
+
1
|
|
3102
|
+
],
|
|
3103
|
+
"type": "integer"
|
|
3104
|
+
},
|
|
3105
|
+
{
|
|
3106
|
+
"type": "null"
|
|
3107
|
+
}
|
|
3108
|
+
],
|
|
3109
|
+
"default": null,
|
|
3110
|
+
"description": "启停:1 / 0",
|
|
3111
|
+
"title": "Active"
|
|
3112
|
+
}
|
|
3113
|
+
},
|
|
3114
|
+
"required": [
|
|
3115
|
+
"job_id"
|
|
3116
|
+
],
|
|
3117
|
+
"title": "SubJobUpdateInput",
|
|
3118
|
+
"type": "object"
|
|
3119
|
+
},
|
|
3120
|
+
"TopSpec": {
|
|
3121
|
+
"additionalProperties": false,
|
|
3122
|
+
"description": "全局TopN排序规格(subscription专用)。",
|
|
3123
|
+
"properties": {
|
|
3124
|
+
"field": {
|
|
3125
|
+
"description": "排序字段(name_en);仅支持可排序类型(keyword/long/double/date)",
|
|
3126
|
+
"title": "Field",
|
|
3127
|
+
"type": "string"
|
|
3128
|
+
},
|
|
3129
|
+
"order": {
|
|
3130
|
+
"default": "desc",
|
|
3131
|
+
"description": "排序方向:desc降序(取最大的N个)/asc升序(取最小的N个)",
|
|
3132
|
+
"enum": [
|
|
3133
|
+
"asc",
|
|
3134
|
+
"desc"
|
|
3135
|
+
],
|
|
3136
|
+
"title": "Order",
|
|
3137
|
+
"type": "string"
|
|
3138
|
+
}
|
|
3139
|
+
},
|
|
3140
|
+
"required": [
|
|
3141
|
+
"field"
|
|
3142
|
+
],
|
|
3143
|
+
"title": "TopSpec",
|
|
3144
|
+
"type": "object"
|
|
3145
|
+
}
|
|
3146
|
+
},
|
|
3147
|
+
"additionalProperties": false,
|
|
3148
|
+
"properties": {
|
|
3149
|
+
"operation": {
|
|
3150
|
+
"description": "预览操作:create 创建或 update 修改",
|
|
3151
|
+
"enum": [
|
|
3152
|
+
"create",
|
|
3153
|
+
"update"
|
|
3154
|
+
],
|
|
3155
|
+
"title": "Operation",
|
|
3156
|
+
"type": "string"
|
|
3157
|
+
},
|
|
3158
|
+
"create": {
|
|
3159
|
+
"anyOf": [
|
|
3160
|
+
{
|
|
3161
|
+
"$ref": "#/$defs/SubJobCreateInput"
|
|
3162
|
+
},
|
|
3163
|
+
{
|
|
3164
|
+
"type": "null"
|
|
3165
|
+
}
|
|
3166
|
+
],
|
|
3167
|
+
"default": null,
|
|
3168
|
+
"description": "创建业务参数;仅 operation=create 时传入,confirmed 不影响预览"
|
|
3169
|
+
},
|
|
3170
|
+
"update": {
|
|
3171
|
+
"anyOf": [
|
|
3172
|
+
{
|
|
3173
|
+
"$ref": "#/$defs/SubJobUpdateInput"
|
|
3174
|
+
},
|
|
3175
|
+
{
|
|
3176
|
+
"type": "null"
|
|
3177
|
+
}
|
|
3178
|
+
],
|
|
3179
|
+
"default": null,
|
|
3180
|
+
"description": "本人 job_id 和局部修改参数;仅 operation=update 时传入,confirmed 不影响预览"
|
|
3181
|
+
}
|
|
3182
|
+
},
|
|
3183
|
+
"required": [
|
|
3184
|
+
"operation"
|
|
3185
|
+
],
|
|
3186
|
+
"title": "PrecheckInput",
|
|
3187
|
+
"type": "object"
|
|
3188
|
+
},
|
|
3189
|
+
"output_schema": {
|
|
3190
|
+
"additionalProperties": false,
|
|
3191
|
+
"properties": {
|
|
3192
|
+
"checked_at": {
|
|
3193
|
+
"description": "检查时间,东八区 ISO 时间",
|
|
3194
|
+
"title": "Checked At",
|
|
3195
|
+
"type": "string"
|
|
3196
|
+
},
|
|
3197
|
+
"windows": {
|
|
3198
|
+
"additionalProperties": {
|
|
3199
|
+
"anyOf": [
|
|
3200
|
+
{
|
|
3201
|
+
"type": "string"
|
|
3202
|
+
},
|
|
3203
|
+
{
|
|
3204
|
+
"type": "null"
|
|
3205
|
+
}
|
|
3206
|
+
]
|
|
3207
|
+
},
|
|
3208
|
+
"description": "发布时间、入库时间、更新时间三个维度的绝对闭区间;空表示不过滤",
|
|
3209
|
+
"title": "Windows",
|
|
3210
|
+
"type": "object"
|
|
3211
|
+
},
|
|
3212
|
+
"matched_rows": {
|
|
3213
|
+
"description": "命中行数;count_relation=gte 时为下界,非精确总量",
|
|
3214
|
+
"title": "Matched Rows",
|
|
3215
|
+
"type": "integer"
|
|
3216
|
+
},
|
|
3217
|
+
"count_relation": {
|
|
3218
|
+
"description": "eq=精确计数;gte=至少命中该数量",
|
|
3219
|
+
"enum": [
|
|
3220
|
+
"eq",
|
|
3221
|
+
"gte"
|
|
3222
|
+
],
|
|
3223
|
+
"title": "Count Relation",
|
|
3224
|
+
"type": "string"
|
|
3225
|
+
},
|
|
3226
|
+
"system_limit": {
|
|
3227
|
+
"anyOf": [
|
|
3228
|
+
{
|
|
3229
|
+
"type": "integer"
|
|
3230
|
+
},
|
|
3231
|
+
{
|
|
3232
|
+
"type": "null"
|
|
3233
|
+
}
|
|
3234
|
+
],
|
|
3235
|
+
"description": "普通批量的系统导出上限;TopN 未执行预检时为空",
|
|
3236
|
+
"title": "System Limit"
|
|
3237
|
+
},
|
|
3238
|
+
"effective_limit": {
|
|
3239
|
+
"description": "本次生效的单次最大导出行数",
|
|
3240
|
+
"title": "Effective Limit",
|
|
3241
|
+
"type": "integer"
|
|
3242
|
+
},
|
|
3243
|
+
"would_truncate": {
|
|
3244
|
+
"description": "当前统计是否超出有效导出数量;TopN 不新增预检",
|
|
3245
|
+
"title": "Would Truncate",
|
|
3246
|
+
"type": "boolean"
|
|
3247
|
+
},
|
|
3248
|
+
"checked": {
|
|
3249
|
+
"default": true,
|
|
3250
|
+
"description": "是否执行数据量统计;TopN 为 false",
|
|
3251
|
+
"title": "Checked",
|
|
3252
|
+
"type": "boolean"
|
|
3253
|
+
},
|
|
3254
|
+
"message": {
|
|
3255
|
+
"description": "数量提示及调整参数或确认继续的说明",
|
|
3256
|
+
"title": "Message",
|
|
3257
|
+
"type": "string"
|
|
3258
|
+
}
|
|
3259
|
+
},
|
|
3260
|
+
"required": [
|
|
3261
|
+
"checked_at",
|
|
3262
|
+
"windows",
|
|
3263
|
+
"matched_rows",
|
|
3264
|
+
"count_relation",
|
|
3265
|
+
"system_limit",
|
|
3266
|
+
"effective_limit",
|
|
3267
|
+
"would_truncate",
|
|
3268
|
+
"message"
|
|
3269
|
+
],
|
|
3270
|
+
"title": "PrecheckResult",
|
|
3271
|
+
"type": "object"
|
|
3272
|
+
},
|
|
3273
|
+
"flags": [
|
|
3274
|
+
{
|
|
3275
|
+
"flag": "--operation",
|
|
3276
|
+
"field": "operation",
|
|
3277
|
+
"type": "enum(create、update)",
|
|
3278
|
+
"required": true,
|
|
3279
|
+
"desc": "预览操作:create 创建或 update 修改"
|
|
3280
|
+
},
|
|
3281
|
+
{
|
|
3282
|
+
"flag": "--create",
|
|
3283
|
+
"field": "create",
|
|
3284
|
+
"type": "object(json)",
|
|
3285
|
+
"required": false,
|
|
3286
|
+
"desc": "创建业务参数;仅 operation=create 时传入,confirmed 不影响预览"
|
|
3287
|
+
},
|
|
3288
|
+
{
|
|
3289
|
+
"flag": "--update",
|
|
3290
|
+
"field": "update",
|
|
3291
|
+
"type": "object(json)",
|
|
3292
|
+
"required": false,
|
|
3293
|
+
"desc": "本人 job_id 和局部修改参数;仅 operation=update 时传入,confirmed 不影响预览"
|
|
3294
|
+
}
|
|
3295
|
+
],
|
|
3296
|
+
"transport": {
|
|
3297
|
+
"method": "POST",
|
|
3298
|
+
"path": "/subscription/precheck",
|
|
3299
|
+
"send": "args"
|
|
3300
|
+
},
|
|
3301
|
+
"errors": [
|
|
3302
|
+
"auth_error",
|
|
3303
|
+
"validation",
|
|
3304
|
+
"api_error",
|
|
3305
|
+
"network",
|
|
3306
|
+
"internal"
|
|
3307
|
+
]
|
|
3308
|
+
},
|
|
2213
3309
|
{
|
|
2214
3310
|
"action": "task-list",
|
|
2215
3311
|
"op": "task_list",
|
|
@@ -2332,7 +3428,7 @@
|
|
|
2332
3428
|
"type": "integer"
|
|
2333
3429
|
},
|
|
2334
3430
|
"size": {
|
|
2335
|
-
"description": "
|
|
3431
|
+
"description": "本次任务记录的导出数量;实际执行受系统当前总量上限约束,TopN 默认上限 10000 条",
|
|
2336
3432
|
"title": "Size",
|
|
2337
3433
|
"type": "integer"
|
|
2338
3434
|
},
|
|
@@ -2382,7 +3478,7 @@
|
|
|
2382
3478
|
}
|
|
2383
3479
|
],
|
|
2384
3480
|
"default": null,
|
|
2385
|
-
"description": "
|
|
3481
|
+
"description": "对外可操作的失败提示;系统异常仅给通用提示,内部细节不返回",
|
|
2386
3482
|
"title": "Error Msg"
|
|
2387
3483
|
},
|
|
2388
3484
|
"created_at": {
|
|
@@ -2505,7 +3601,7 @@
|
|
|
2505
3601
|
],
|
|
2506
3602
|
"skill": {
|
|
2507
3603
|
"slug": "social-neuron-subscription",
|
|
2508
|
-
"description": "使用场景:定时导出/订阅推送/定期拉数/大批量出文件——需异步产出文件并下载时用能力:按魔方规则、定时 cron 或手动触发,把大库数据异步导出为文件,上传 octo/sftp,产出下载 url 供调用方轮询拉取;可创建/修改/列出/删除/触发订阅 job、翻页查询 task
|
|
3604
|
+
"description": "使用场景:定时导出/订阅推送/定期拉数/大批量出文件——需异步产出文件并下载时用能力:按魔方规则、定时 cron 或手动触发,把大库数据异步导出为文件,上传 octo/sftp,产出下载 url 供调用方轮询拉取;可创建/修改/列出/删除/触发订阅 job、翻页查询 task;普通批量创建/取数配置修改有数据量预检,可选 precheck 只读预览;超量先提示调整参数或征求用户确认,明确同意系统超限规则后才以 confirmed=true 重提,导出仍按上限截断;另有三个只读发现接口:list_sites / list_fields 用于建 job 前对齐站点与字段取值;get_field_values 给出枚举值 / 编码值的中文字典,仅在用户明确要求把导出的码值换成中文时按需取用(换值由调用方拿到数据后自行完成,系统不自动回显)。概念:job=订阅定义(数据范围+频率+投递方式,系统按频率生成 cron);task=job 的一次执行,产物与下载地址落在 file_info。边界:①每 token 生效 job 默认≤10;②两种取数模式二选一:**默认**给命中条件的全部数据、size 默认/最大 50 万、多规则各自拉(同时命中多条规则的数据会重复出现);传 **top** 则不改筛选条件、只在同一批命中里按指定字段跨全部日期/站点/规则排序后取前 N 条、size 默认 1000 最大 10000、多规则 OR 合并(同时命中多条的只出一份),排序字段只能是 keyword/long/double/date 类型;这与平台自身的热搜/热门榜单无关;③导出数据的 kw_ruleId 字段**恒为数组**(列出本行命中的 rule_id;此前是字符串,按老格式解析的下游需改);④投递仅 octo/sftp(kafka 规划中,暂不支持),无主动通知、须轮询 task 取结果。⑤如果拉取不到数据则不会产生文件上传,也就没有文件url信息",
|
|
2509
3605
|
"actions": [
|
|
2510
3606
|
"get-field-values",
|
|
2511
3607
|
"job-create",
|
|
@@ -2515,6 +3611,7 @@
|
|
|
2515
3611
|
"job-update",
|
|
2516
3612
|
"list-fields",
|
|
2517
3613
|
"list-sites",
|
|
3614
|
+
"precheck",
|
|
2518
3615
|
"task-list"
|
|
2519
3616
|
]
|
|
2520
3617
|
}
|