相对于本地调试功能,线上调试功能需要消耗一定的CU资源,但是能够更加真实的验证业务逻辑的正确性。
线上调试功能使用真实的数据存储,有效地减少调试输出和生产输出的差异,有助于您在调试阶段发现问题。
线上调试步骤- 开发作业。更新数据存储DDL中的type参数。
源表:type = 'random'结果表:type = 'print' 上线作业。启动作业。
阿里实时计算平台提供以下2种线上调试功能的Connector:
random源表:周期性的生成对应类型的随机数据。print结果表:输出计算结果。 Connector表参数
Random表参数
| 参数 | 说明 |
|---|---|
| type | 必选,取值唯一且为random。 |
| interval | 可选,产生数据的时间间隔(单位为毫秒),默认值为500。 |
Print表参数
| 参数 | 说明 |
|---|---|
| type | 必选,取值唯一且为print。 |
| ignoreWrite | 可选,默认值为false。可选参数值如下: false:同时输出结果表和日志。 true:仅输出无数据的结果表,不输出日志数据。 |
测试语句
CREATE TABLE random_source ( instr VARCHAR ) WITH ( type = 'random' ); CREATE TABLE print_sink( instr VARCHAR, substr VARCHAR, num INT )with( type = 'print' ); INSERT INTO print_sink SELECt instr, SUBSTRING(instr,0,5) AS substr, CHAR_LENGTH(instr) AS num FROM random_source线上调试结果查询步骤
说明 查询线上调试结果前,请先完成作业上线和启动。
线上调试结果查询查看步骤如下:
登录实时计算控制台。
单击顶部菜单栏中的运维,进入运维页面。
单击作业名称字段下对应的作业,进入作业运维页面。
在Vertex拓扑区域,单击相应结果表节点。
单击SubTask List > 查看日志,进入日志查看窗口。
查看相应的日志。
Print结果表输出
单击taskmanager.out右侧的查看日志。
UDX日志输出
如果您使用了自定义函数UDX,可以使用以下两种方式查看日志:
system out/err方法
单击taskmanager.out或taskmanager.err右侧的查看日志。
SLF4J的Logger方法
单击taskmanager.log右侧的查看日志。



