添加newrelic_rpm gem后,Rails应用Sidekiq页面无法查看定时任务
解决newrelic_rpm导致Sidekiq定时任务Web界面不显示的问题
你的问题是因为newrelic_rpm默认会对Sidekiq的定时任务进行监控,这一行为会干扰Sidekiq Web界面读取定时任务列表的逻辑——虽然任务仍能正常执行,但无法在Web端展示。只需在newrelic.yml中添加特定配置即可解决:
- 打开项目根目录下的
config/newrelic.yml文件 - 在对应运行环境的配置块(比如
development:或production:)中,添加以下Sidekiq专属配置:
sidekiq: monitor_scheduled_jobs: false
- 重启Sidekiq服务和Rails应用
原理说明
monitor_scheduled_jobs是newrelic_rpm的默认启用配置,它会包装Sidekiq的定时任务调度器,接管任务的监控逻辑,但同时会导致Sidekiq Web界面无法直接读取原生的定时任务数据。将该配置设为false后,New Relic不会干预Sidekiq的定时任务存储机制,Sidekiq Web就能正常展示任务列表了。
内容的提问来源于stack exchange,提问作者Himani Kaushik
相关产品推荐
相关产品推荐

