我们在RDS AWS和Ruby on Rails 中的Postgres上遇到了很多关于PG:ConnectionBad的哨兵问题
PG::ConnectionBad Sidekiq/BookingExtensionCheckWorker
could not translate host name “ls-XXXXXXXXXXXXfee44.XXXXXXXXX.eu-west-1.rds.amazonaws.com” to address: Name or service not known
在两周前,我们迁移了一个新的数据库,并在RoR文件api 中更改了端点
新数据库端点
ls-XXXXXXXXXXXXXXXf3d4a.XXXXXXXX.eu-west-1.rds.amazonaws.com
它运行良好,新数据库和RubyonRails api之间没有任何问题。然而,我收到了很多哨兵的问题,他们说sidekiq在连接数据库方面有问题,因为他们使用了不再使用的旧数据库地址。我必须检查sidekiq数据库;代码显示它已连接到新数据库。当我在rails上运行Ruby时,它们总是回到旧数据库。
有没有办法找到为什么sidekiq保持连接旧数据库
你如何检查作业如果你sidekiq设置。可能以下网址将导致所有的工作。
your_url/sidekiq
它将向您显示所有工作,我认为您可以在这里选择重新启动服务。只需单击即可重新启动sidekiq。一切都会好起来的。
如何启动
作为使用旧配置运行的sidekiq。所以下面的步骤可能很危险,我认为你必须检查一下你是如何开始你的过程的。否则,以下是人们配置和运行它的一些方法
systemctl restart sidekiq
如果这不起作用,请检查您的命令—部署人员已在/etc/init.d文件夹中设置了某种脚本一段时间内,开发人员使用以下简单的行来运行sidekiq
bundle exec sidekiq -d -P tmp/sidekiq.pid -L log/sidekiq.log
或
bundle exec sidekiqctl stop