实时计算开发平台为您提供了一套本地调试环境,您可以在本地调试环境中上传自定义数据、模拟作业运行、检查输出结果,最终验证业务逻辑的正确性。
本地调试环境的特点
本地调试环境与生产环境完全隔离。本地调试环境中,所有的Flink SQL在独立的调试容器中运行,调试结果输出至调试环境页面,不会对线上生产流、线上实时计算作业或线上数据存储系统造成影响。

说明 实时计算调试模式无法检查出数据存储中的因为数据格式兼容性问题而导致的运行失败。例如,输出数据长度大于RDS建表最大值的问题。

本地调试步骤
说明 进行作业调试前,请您先完成作业的开发。作业开发流程请参见开发。
- 登录实时计算控制台。
- 在页面顶部,单击开发。
- 在目标作业开发编辑区域,单击页面顶部的调试。
- 在调试作业页面,输入测试数据。本地调试提供2种调试数据输入方式:
- 本地上传方式
- 在数据预览区域,单击下载模板。
- 根据模板,编辑自定义调试数据。
说明 调试数据的默认分隔符为逗号(,),如果需要自定义分隔符请参见调试数据分隔符。
- 在数据预览区域,单击上传 ,上传自定义调试数据。
- 线上抽样方式
说明 使用顺序抽样线上数据功能前,请确保数据源在抽取时间段存在数据。
- 在数据预览区域,单击随机抽样线上数据或顺序抽样线上数据。
- 输入抽样配置信息。
- 单击确定。
说明 数据上传成功后,可在数据预览区域查看已上传数据。 - 本地上传方式
- 单击确定,启动调试。
- 在作业编辑区域的底部,查看调试输出结果。
调试数据分隔符
调试数据默认使用逗号(,)作为分隔符,如果输入的数据内容(例如JSON文件)中已存在逗号(,),您需要自定义其它字符作为调试数据的分隔符,例如竖线(|)。
说明 实时计算仅支持使用单个英文字符(例如竖线(|))为分隔符。不支持使用字符串(例如
aaa
)作为分隔符。
调试数据分隔符的配置步骤如下:
说明 配置数据分隔符前,请您先完成作业的开发。作业开发流程请参见开发。
- 在作业编辑区域,单击右侧的作业参数。
- 在作业参数编辑区域,输入调试数据分隔符的配置参数。配置分隔符为竖线(|)的示例代码如下。
debug.input.delimiter = |
本地调试UDX的日志输出
- 本地调式时打印UDX中日志
在Java中通过以下方法,将日志的格式转换为实时计算可解析的格式,并打印本地调试的UDX日志。
public static void debugMsgOutput(String msg) { System.out.println( String.format("{\"type\":\"log\",\"level\": \"INFO\", \"time\": \"%s\", \"message\": \"%s\", \"throwable\": \"null\"}\n",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()), msg)); }
- 查看UDX的日志输出
调试结束后,在作业编辑区域底部的运行结束页面,可以查看UDX的日志输出。说明 您可以通过快键Ctrl+F的方式搜索相应的日志信息。