遵循Chainlink官方fulfilling-requests文档操作失败,currentprice始终返回0
Chainlink GCP部署故障排查方案(任务无法完成、currentprice返回0)
节点侧排查
- 确认节点配置的
ETH_CHAIN_ID与合约部署的测试网链ID完全一致,节点绑定的钱包持有足额测试网原生代币支付上链gas - 核对节点作业的JobID与Consumer合约中传入的JobID大小写完全匹配,http请求适配器可正常拉取目标接口数据,响应字段解析路径配置正确
- 检查节点运行日志,出现
no permission报错时,需在Oracle合约调用setFulfillmentPermission方法为节点地址开通履约权限;出现gas too low报错时上调节点默认gas配置阈值
合约侧排查
- Oracle合约部署时传入的LINK代币地址需与对应测试网官方LINK地址一致,不得填写错误地址
- Consumer合约需预先转入足额LINK代币用于支付请求费用,发起请求时传入的Oracle地址、JobID、LINK支付金额参数需与实际配置一致
- 查看Oracle合约的事件日志,无请求事件说明Consumer到Oracle的调用链路失败,有请求事件但无节点履约日志回到节点侧排查配置问题
返回值为0专项排查
- 确认节点作业解析接口返回的结果为有效数值,若接口返回小数,需确认数值放大倍数与Consumer合约
currentprice的精度定义匹配 - 确认节点履约交易已成功上链未发生回滚,若交易回滚优先排查gas不足、权限缺失两类常见原因
内容的提问来源于stack exchange,提问作者Logesh R
相关产品推荐
相关产品推荐

