新增Restful API 实时采集
本节介绍如何在实时开发中配置Restful Api实时采集任务。
实时开发支持遵循Rest设计风格的Web Api的接口通过配置对应的实时采集任务进行数据采集,写入到对应消息中间件后进行实时开发处理。
实时采集-参数配置

配置 | 说明 | ||||||
---|---|---|---|---|---|---|---|
协议 |
Restful API实时采集支持HTTP/HTTPS协议形式 |
||||||
请求方式 |
支持 |
||||||
URL |
根据实际情况输入 |
||||||
Header参数 |
支持根据请求需要为URL拼接Header参数,其中 |
||||||
Body/Param参数 |
支持根据请求方式不同区分Body/Param参数,参数配置完成后将以Json形式发送并请求,具体说明如下:
NextValue:次回请求参数值,支持静态、动态两种参数形式。其动态参数有两种来源如下:
支持对动态参数进行加、减计算,例如 ${response.value}+100;
Format:时间参数值转化格式,因Restful API 返回值为字符串格式,若要解析出时间需要手动设置转化格式,例如
|
||||||
异常策略 |
支持根据返回参数中不同值配置异常策略,具体说明如下: |
||||||
返回类型 |
支持根据 |
||||||
请求间隔 |
多次Restful API请求发起之间的间隔,单位为秒。 NOTE: 数据预览请求间隔为固定1s,如果存在接口范围值必须间隔XX秒的配置时,将会导致请求失败 |
常见问题
Q:实时采集任务运行一段时间后,为什么突然无法采集到的数据?
A:请检查是否存在分页概念。若设置参数中存在分页参数,当实时采集任务请求频繁时且写入速率无法支持时,会导致数据为空,例如请求到70页,但实际数据仅有50页。
解决方法:增大请求间隔。
Q:正常返回的日期数据作为NextValue参数,传值时变成纯数字怎么办?
A:平台在处理Response的字符串时,会先默认根据标准时间格式进行解析并转化为Unix时间戳,再进行计算。如果此时不对该值声明Format形式,则会是纯数字形式。
解决方法:涉及时间类型的动态参数最好添加Format。
Q:返回类型为Json的采集任务正常运行后突然失败?
A:当指定采集的解析字段存在Key的Value值为空时,API不会传值,此时使用JSON格式会导致任务失败。
解决方法:当存在字段返回值可能为空的情况时,建议使用 text
返回类型。
Q:RestfulAPI采集是否有重试策略?具体是怎么样的?
A:有重试策略,并且重试时会有对应的日志输出,可参考如下:
1. 请求状态的处理
如果http/https的请求返回的http状态码不是200,默认重试三次 重试仅使用上次请求失败的参数进行重新请求。
2.异常策略的处理
根据用户设定的异常策略,可在接收到指定参数时进行重试。