如何解决节点公牛队列错误:缺少作业类型 JOB_NAME
我正在创建节点公牛队列并将动态名称作为选项传递给 Queue.add function
myQueue.add(`myJob-${val}`,{
attempts: 3,removeOnFail: true
});
我正在为上述作业定义如下进程名称
myQueue.process(`myJob-${val}`,async (job,callback) => {
try {
console.log('Processing job',job.id,job.data);
callback();
} catch (err) {
console.log(err);
}
});
但是,我收到以下错误
Job ID 1 Failed Error: Missing process handler for job type myJob-123
如何使用动态名称值正确定义 processor
?
解决方法
您对 .add()
的第二个参数不应该是作业数据吗?您作为第二个参数传入的工作选项是正确的,但它们应该是第三个。
可以试试这个:
myQueue.add(`myJob-${val}`,{ lorem: "ipsum" },{
attempts: 3,removeOnFail: true
});
如果我收到同样的 Missing process handler for job ___
错误,那是因为我在处理器运行之前添加了作业。当该问题不可避免时,将 attempts
(如您所做的)增加到大于 1 的数字已修复它。但是,您将这些作业选项作为 data
传递,因此 attempts
不会影响您的队列。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。