收藏
回答

如何解决调用云函数报错 -404012/-404010/-1/未登录 问题?

场景描述:

  1. 在onlaunch中 初始化云函数环境,调用云函数接口,调用云函数成功,计算使用耗时
  2. 访问频次:每分钟1.5k人访问
  3. 后台设置未登录用户也可访问云函数

非预期结果:

  1. 平均耗时:2s左右(onlaunch的时候打一个点,结果回来打一个点 相减)
  2. 一天会有230个 -404012错误,提示:polling exceed max timeout retry  
  3. 一天会有90个 -404010错误, 提示:cloud.callFunction:fail timeout for result fetching, result cannot be fetched anymore
  4. 一天会有90个 -1错误, 提示:operateWXData:fail:cgi fail(3,-1) 或 operateWXData:fail:cgi fail(1,-7)
  5. 一天会有13个 未登录的错误, 提示:operateWXData:fail:not login


错误码:-404012对应的日志

  • 类型一:
错误日志1:
errCode: -404012 polling exceed max timeout retry | 
errMsg: cloud.callFunction:fail polling exceed max timeout retry (callId: 1606221345397-0.37995609147634024) 
(trace: 
20:35:45 start->20:35:45 app show->20:36:0 timeout, 
retry->20:36:15 timeout, 
retry->20:36:30 timeout, abort
); at cloud.callFunction api; 

错误日志2:
errCode: -404012 polling exceed max timeout retry | 
errMsg: cloud.callFunction:fail polling exceed max timeout retry (callId: 1606221274680-0.4076756491289577) 
(trace: 
20:34:34 start->20:34:34 
app show->20:34:49 timeout, 
retry->20:35:4 timeout, 
retry->20:35:19 timeout, abort); at cloud.callFunction api; 

  • 类型二:
错误日志1errCode: -404012 polling exceed max timeout retry | 
errMsg: cloud.callFunction:fail polling exceed max timeout retry (callId: 1606220299319-0.09073279831781167) 
(trace: 
20:18:19 start->20:18:26 app hide->20:18:27 app show->20:18:29 app hide->20:18:38 timeout, 
retry->20:18:38 app show->20:18:47 app hide->20:18:53 timeout, 
retry->20:19:8 timeout, abort); at cloud.callFunction api; 
错误日志2errCode: -404012 polling exceed max timeout retry | 
errMsg: cloud.callFunction:fail polling exceed max timeout retry (callId: 1606220268033-0.11764798559190681) 
(trace: 
20:17:48 start->20:17:53 app hide->20:17:55 app show->20:18:3 timeout, 
retry->20:18:5 app hide->20:18:7 app show->20:18:9 app hide->20:18:20 timeout, 
retry->20:18:20 app show->20:18:29 app hide->20:18:35 timeout, abort);


错误码 -404010日志:

日志1:
errCode: -404010 result expired | 
errMsg: cloud.callFunction:fail timeout for result fetching, result cannot be fetched anymore; 
at cloud.callFunction api

日志2:
errCode: -404010 result expired | 
errMsg: cloud.callFunction:fail timeout for result fetching, result cannot be fetched anymore; 
at cloud.callFunction api


错误码:-1 对应的日志:

日志1:
errCode: -1  | errMsg: cloud.callFunction:fail Error: operateWXData:fail:cgi fail(3,-1) 
(callId: 1606221457357-0.7488480327850424) 
(trace: 
20:37:37 start->20:37:37 system error (Error: operateWXData:fail:cgi fail(3,-1)), 
retry->20:37:37 system error (Error: operateWXData:fail:cgi fail(3,-1)), 
retry->20:37:37 system error (Error: operateWXData:fail:cgi fail(3,-1)), abort); at cloud.callFunction api
日志2:
errCode: -1  | errMsg: cloud.callFunction:fail Error: operateWXData:fail:cgi fail(1,-7) 
(callId: 1606216863184-0.2541693662370672) 
(trace: 
19:21:3 start->19:21:3 app show->19:21:5 system error (Error: operateWXData:fail:cgi fail(1,302)), 
retry->19:21:7 system error (Error: operateWXData:fail:cgi fail(1,302)), 
retry->19:21:13 system error (Error: operateWXData:fail:cgi fail(1,-7)), abort);


未登录日志:

operateWXData:fail:not login


回答关注问题邀请回答
收藏

3 个回答

  • 好名字可以让你的朋友更容易记住你
    好名字可以让你的朋友更容易记住你
    发表于小程序端
    2021-09-04

    大佬 404012报错轮询超最大值解决了吗

    2021-09-04
    有用
    回复
  • 阿康.sol
    阿康.sol
    2021-05-28

    我也是出现这种问题,啥情况

    2021-05-28
    有用
    回复 1
    • 沛林
      沛林
      2021-06-04
      最主要还是网络问题
      2021-06-04
      回复
  • 哄哄
    哄哄
    2020-11-25

    你把操作云函数代码给贴一下,大概率是写的逻辑问题,造成前面几个错误

    2020-11-25
    有用
    回复
登录 后发表内容
问题标签