抽取任务超时报错问题排查

现象:用户的抽取任务超时报错,如下图

抽取任务超时报错问题排查 - 图1

  • 遇见了可以先打开F12找到对应任务的transId

    抽取任务超时报错问题排查 - 图2

    抽取任务超时报错问题排查 - 图3

  • 打开bi服务器,进入到 /youdata/logs/de的路径里面找到对应报错日期当天的biz日志后输入:grep transId 日志文件名字 就可以看到该id的日志内容

抽取任务超时报错问题排查 - 图4

  • 在日志里面找到关键词 rows``read``write关键词,如果好找的话也可以使用grep transId 日志文件 > xxxx.log将对应的文件输出到一个新文件里面,然后打开这个文件使用/+关键词定位

抽取任务超时报错问题排查 - 图5

这样就可以定位到慢到底是因为有数读数据的时候慢还是写入输入的时候慢

例如:

抽取任务超时报错问题排查 - 图6

这个图片里面就是有数在用户的数据源端读取数据的时候过慢,每批数据4000行,但读取的时间长达上百秒,这种就是慢在有数在源端读取数据的时候,需要用户侧排查一下业务库性能。

注:有数抽取时间限制默认是4个小时也就是 14,400 秒私有化部署用户可以在yaml文件里面修改限制时间

以设置6h抽取超时为例:

1.平台侧环境变量设置:(注意单位为分钟,在web和inner-web配置)。任务级别的超时会覆盖队列的默认超时(如果没有该参数的话需要添加,有的话可以直接修改)

DE_FLOW_TIMEOUT: 360

2.抽取侧环境变量设置:(注意单位为毫秒,在tf 配置)。此为队列级别超时,分别表示默认抽取和高性能抽取。

DE_FLOW_TIMEOUT: 21600000

APEX_FLOW_TIMEOUT: 21600000

调整完环境变量后,dsd服务配置文件使其生效。